35

私の Mac のセットアップ:

ボリューム A :
OS X 10.8
Xcode 4.5 以降 - 10.6 SDKはベース SDK として利用できません

ボリューム B :
OS X 10.7 Xcode
4.3.3 - 10.6 SDKはベース SDK として利用可能

ボリューム C :
OS X 10.6 Xcode
4.2 - 10.6 SDKは Base SDK として利用可能


ボリューム A では、Xcode 4.5 をインストールしましたが、ビルド ターゲットのビルド設定で使用可能な「ベース SDK」として 10.6 SDK が含まれていません。

このハード ドライブには個別の 10.6 ボリュームと 10.7 ボリュームがあります。どちらにも Xcode がインストールされており、どちらも Xcode ビルド ターゲットのビルド設定でベース SDK として 10.6 SDK を選択できます。

10.6 SDK がボリューム C にインストールされていることを知っています (/Developer/SDKs古い Xcode インストールから)。

ボリューム A の Xcode を、ボリューム C にある 10.6 SDK に向けるにはどうすればよいですか?

4

4 に答える 4

85

古いSDKにシンボリックリンクを追加する必要があります(これは通常、コピーするよりも簡単です)。

cd /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
ln -s /path/to/old/SDK .

これは10.5まで正常に機能します。それを超えて、物事はもう少し複雑になります...

Xcodeの将来のバージョンでこれがサポートされるという約束はありませんが、私はXcodeチームとそれについて話し合っており、彼らはすぐにそれを変更することに熱心ではないようです。

個人的には、/ path / to / old/SDKを/SDKsというトップレベルのディレクトリに保存することがよくあります。そうすれば、アップグレードするたびにすべてを簡単に修正できます。

編集:Xcodeがアップグレードするたびにこの修正を再適用するのを簡単にするfix-xcodeスクリプトがあります。


更新:古いSDKを使用するための最新バージョンのXcode(7.3以降)では、MinimumSDKVersionここで編集します。

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Info.plist
于 2012-07-11T03:06:38.163 に答える
21

間違ったアプローチ。SDKをXcodeに「向ける」ことはありません。代わりに、Xcodeのインストールに適した「SDKs」フォルダにSDKをコピーする方が幸運です。最近のXcodeインストールでは、これは通常次のとおりです。

Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/

そこにSDKをコピーし、Xcodeを終了して再起動し、見つかったものを確認します。

(ここで他の回答を読むと、元のSDKを他の場所に保持することに行き詰まっている場合は、シンボリックリンクがオプションになる可能性があると思います)

于 2012-07-11T03:04:46.323 に答える
0

SDKをシンボリックリンクするだけではどうでしょうか。「ln-s」?それがうまくいかない場合は、いくつかのplistハッキングが必要になります。

于 2012-07-11T03:05:01.897 に答える
0

古いバージョンの Xcode.App/Developer/platforms を参照し、iOS 6.1 SDK を XCode 5 の同じフォルダーにコピーすることで解決しました。

于 2014-02-03T10:31:50.583 に答える