簡単な答えは次のとおりです。はい、できます。
「それがどのように行われるか」の部分に入る前に、ここに私のパッチ/ハック/修正についてのいくつかのメモがあります。当初からの主な目標は次のとおりです。
すべての変更を最小限に抑えます。
Xcodeのセットアップを可能な限りオリジナルに保ちたいと考えています。
どうしても、ファイルにパッチを適用したり変更したりしないようにしてください。
すべてのファイルをそのままにして、元のコンテンツを保持する必要があります。
どうしても必要な場合を除いて、ファイルの移動やコピーは避けてください。
私はそれらすべての目標を維持することができました。ほとんどすべてがシンボリックリンクを作成することによって行われます。交換する必要があるのは既存のシンボリックリンクを1つだけで、万が一の場合に備えて、交換前にバックアップします。
端末操作の専門家でない場合は、タイプミスを避けるために、返信からすべての端末コマンドをコピーして端末に貼り付けることを強くお勧めします。間隔、引用符、特に大文字と小文字を区別することも重要になる可能性があることに注意してください。それらを1行ずつコピーして貼り付けます。一度に複数の行を超えないようにし、貼り付けた各行の後にreturnキーを押して、コマンドを実行します。操作でパスワードの入力を求められた場合、これは現在ログインしている管理者ユーザーのパスワードになります(入力中はキーストロークは表示されません。これは正常です。心配しないでください。パスワードを入力し続けてreturnキーを押してください。re -タイプミスがあった場合は試して、もう一度プロンプトが表示されます)。
前提条件
開始する前に、次の条件が満たされていることを確認してください。
- 管理者ユーザーとしてログインしています。
- Terminal.app(アプリケーション/ユーティリティ)を起動し、ターミナルウィンドウが開いています。
- Xcode3(例:3.2.5)およびXcode4ディスクイメージ(DMG)またはインストーラーのコピーが利用可能です。
- いずれかのXcodeバージョンがすでにインストールされている場合は、最初にそれをアンインストールすることを検討してください。そうすれば、フレッシュ/クリーンなセットアップから始めることができます。Xcodeをアンインストールしても、設定、配色、またはキーバインディングのカスタマイズは削除されません。理想的には、現在Xcodeバージョン(3でも4でもない)がインストールされていないシステムから始めます。
ステップ1:Xcode3をインストールする
重要: Xcode3の「システムツール」または「Unix開発」パッケージをインストールしないでください。「 MacOSX10.4SDK」および/または「ドキュメント
」
をインストールするかどうかはあなた次第です。それがiOSSDKを備えたXcode3である場合、それらをインストールするかどうかもあなた次第です。
インストール先のフォルダは自由に選択できます。このガイドでは「/Xcode3」を選択しましたが、別のものを自由に選択してください。それに応じて、すべての端末コマンドを変更してください。
ここに示す手順の順序は通常それほど重要ではありませんが、手順1と手順2を入れ替えないことを強くお勧めします。Xcodeは常に、選択した宛先フォルダーの外にいくつかのファイルをインストールし、私を信頼します。ディスク上のこれらのファイルのXcode4バージョン。Xcode4の前にXcode3をインストールすることにより、Xcode4が必要に応じてこれらのファイルを上書きすることを確認できます。私はかつてステップ1と2を交換しましたが、最終的には間違った順序に関連している可能性のある奇妙な問題が発生しました(確かには言えませんが、正しい順序で再インストールした後、問題はなくなりました)。
ステップ2:Xcode4をインストールする
好きなパケットを選択してください。「システムツール」をインストールすることをお勧めしますが、厳密に必要というわけではありません(ただし、ほとんどの人は遅かれ早かれその機能を見逃します)。
繰り返しになりますが、お好きなターゲットフォルダを自由に選択してください。このガイドでは、通常のターゲットフォルダ「/ Developer」を選択しました。別のフォルダを使用する場合は、それに応じてすべてのターミナルコマンドを変更してください。
ステップ3:10.4 /10.5SDKサポートの復元
ターミナルウィンドウに切り替えて、次のコマンドを実行します。
cd / Developer / SDKs
sudo ln-s/Xcode3/SDKs/MacOSX10.4u.sdk。
sudo ln-s/Xcode3/SDKs/MacOSX10.5.sdk。
もちろん、手順1でSDK 10.4もインストールした場合にのみ、10.4uのコマンドを実行してください。
これは、SDK 10.5(および場合によっては10.4)をXcode4の選択リストに戻すのに十分です。よろしければ試してみてください。Xcode4を起動し、プロジェクトを開いて、選択したSDKを変更してみてください。簡単でしたね 次の手順に進む前に、必ずXcode4(ウィンドウだけでなくアプリケーション)も閉じてください。
ステップ4:GCC4.0サポートの復元
MacOS 10.4 SDKをインストールしていない場合、または使用する予定がない場合は、この手順をスキップして手順5に進むことができます。
SDK 10.4を使用するには、GCC 4.0を使用する必要がありますが、GCC4.2は機能しません。Appleは、GCC4.2はSDK10.4と互換性がないと主張している。まあ、私に言わせれば、これはデマだ。私はすでにこの制限を2回以上上書きしており、そのために最も小さな問題は発生しませんでした。SDK10.4を変更してXcodeでGCC4.2を使用できるようにするのは簡単ですが、私の目標はすべてのファイル変更を回避することだったので、GCC4.0サポートをXcodeに追加するだけです。これも良いことです。一部のプロジェクトは実際にGCC4.0に依存しています(たとえば、GCC 4.2には、有効なインラインアセンブリコードがエラーなしでコンパイルできないバグがいくつかありますが、同じコードはGCC4.0とGCC4.4で問題なくコンパイルされます)。
ターミナルに戻る:
cd / Developer / usr / bin
sudo ln -s/Xcode3/usr/bin/*4.0*。
cd / Developer / usr / libexec / gcc / powerpc-apple-darwin10
sudo ln-s/Xcode3/usr/libexec/gcc/powerpc-apple-darwin10/4.0.1。
現在、GCC 4.0がXcode4でまだ選択できないという事実を除いて、完全なGCC4.0サポートを復元しました。これは、Xcode4にGCC4.0コンパイラプラグインがもうないためです。幸い、Xcode3プラグインはXcode4でも機能し、位置だけが根本的に変更されています。Appleは現在、これらのプラグインをバンドルの奥深くに隠しており、そこにあるプラグインだけが機能しているように見えます。古い位置に配置しても効果がないようです。
cd / Developer / Library / Xcode / PrivatePlugIns
cd Xcode3Core.ideplugin / Contents / SharedSupport / Developer / Library / Xcode / Plug-ins
sudo ln -s "/ Xcode3 / Library / Xcode / Plug-ins /GCC4.0.xcplugin"。
ここで、Xcode4を再度起動し、プロジェクトを開いて、コンパイラーを選択してみてください。GCC4.0をリストに戻す必要があります。これで、実際にはすでにSDK 10.4または10.5、GCC 4.0を選択でき、PPCバイナリを構築するのに問題はないはずです。「アーキテクチャ」ビルド設定で「その他...」を選択し、手動で「 ppc 」と入力してから、「有効なアーキテクチャ」を変更して「 ppc 」も含めます。GCC4.2とSDK10.5を使用してPPCバイナリをビルドしようとしても失敗することを除いて、ほぼ完了です。
ステップ5:GCC4.2のPPCサポートを復元する
AppleはXcode4でのみIntelプラットフォームをサポートしているため、すべてのGCC4.2ツールがPPCをサポートして構築されているわけではありません。PPCをサポートしていない重要なツールが1つあります。このツールは、「as」という名前で、GNUアセンブラです。GCC4.2でppc/ppc64バイナリをコンパイルするには、ppc/ppc64をサポートする「as」バージョンを使用する必要があります。これは、シンボリックリンクに置き換える前に、最初に脇に移動する(バックアップコピーを作成する)必要がある唯一のファイル(実際にはシンボリックリンクでもあります)です。
cd /Developer/usr/libexec/gcc/powerpc-apple-darwin10/4.2.1
sudo mv as as.bak
sudo ln -s / Xcode3 / usr / bin/as。
ステップ6:ステップ6はありません
それはすべての人々です。それがいかに簡単であったかを考えると、Appleは確かにSDK 10.4 / 10.5、ppc / ppc64、またはGCC 4.0のサポートを必要としてドロップしなかったと想像できます。彼らはそれをドロップしたかったので、すべてをドロップしました。
この設定が私と同じように機能することを願っています。私は、あちこちで検索パスを変更する必要があることを除いて、大きな変更を加えることなく、すべての古いプロジェクトをXcode4でコンパイルすることができました。
PS:
ここで自分の質問に答えるのは奇妙に思えるかもしれませんが、この問題をすべて自分で解決する方法を見つけたので、コミュニティと知識を共有したいと思います。これは本当に貴重な情報だと思います。そこにいるすべてのMacOS開発者。この質問は非常に多くの場所で何度も尋ねられており、これまでのところ、同様の修正を思い付く人を見たことがありません。富を分かち合い、知識を広めるなど、あなたは私が何を意味するかを知っています。
それでも問題/質問がある場合:
このトピックに関して追加の質問がある場合、または古いプロジェクトを正しく構築するのにまだ問題がある場合は、Stack Overflowが設計されていることを実行してください:このページの右上隅にある[質問する]をクリックして、新しい質問を作成します。そうすれば、コミュニティ全体がこれらの問題の解決に役立つ可能性があります。これは、問題がこのハッキングに直接(間接的にさえも)関連していない可能性があるためです。
質問の最初に、このハックを適用したという事実に言及することをお勧めします。この質問に直接リンクして、このハッキングのことを聞いたことがない人でも簡単に調べられるようにすることもできます。そうしないと、SDK 10.4 / 10.5、PPC、またはGCC 4.0をXcode4と組み合わせて言及すると、ほとんどの人が混乱するでしょう。これらはどちらも公式にはサポートされていません。このハックについて言及するのを忘れると、まともな返信ではなく、かなりばかげたコメントを受け取る可能性があります。
ここに質問や問題を返信またはコメントとして投稿することは控えてください。それらを返信として投稿することは意味がありません。なぜなら、それらは返信ではなく、コメントを使用する以外に、人々があなたに返信する方法がないためです。コメントは、あなたの質問に対する適切な回答またはあなたに対する適切な解決策のための十分な余地を提供しない可能性があります問題。また、コメントとして投稿すると、スペースが非常に少なくなり、コメントにはツリーのような階層がないため、返信コメントの追跡が困難になります(さらに、適切な返信/ソリューションのためのスペースがほとんどありません)。ありがとうございました。
もちろん、他の種類のコメントや元の質問へのより良い回答はいつでも歓迎です;-)