web-dev-qa-db-ja.com

最新のSDKを使用するためのxcodebuildのパラメーター。

Ant execタスクを使用してxcodebuildを実行し、iOSプロジェクトhudsonをビルドします。 HudsonスレーブまたはiOSプロジェクトでSDKを更新した後、すべてのプロジェクトが失敗するため、SDKバージョンを指定しないようにスクリプトを作成できます。

ターゲットセットアップBase SDK - Latest iOSのSDK 4.2以降、xcodeにはNiceオプションがあります。

そして、xcodebuildコマンドで-sdk paramを提供する必要はありませんが、その後(と思う)xcodeプロジェクトから取得され、コミット中に誤ってターゲットをシミュレーターからデバイスに変更する可能性があるため、悪いです。

一定の何かが必要です。開発者のマシンでもこのantタスクを実行できるようにしたいので、すべてのマシンで設定することを繰り返したくないので、env変数を使用しない方がいいでしょう。

残念ながらxcodebuild -showsdksは以下のみを提供します:

Mac OS X SDKs:
    Mac OS X 10.4                   -sdk macosx10.4
    Mac OS X 10.5                   -sdk macosx10.5
    Mac OS X 10.6                   -sdk macosx10.6

iOS SDKs:
    iOS 4.2                         -sdk iphoneos4.2

iOS Simulator SDKs:
    Simulator - iOS 3.2             -sdk iphonesimulator3.2
    Simulator - iOS 4.0             -sdk iphonesimulator4.0
    Simulator - iOS 4.1             -sdk iphonesimulator4.1
    Simulator - iOS 4.2             -sdk iphonesimulator4.2

-sdk iphoneosLatestのようなものが必要です。私の唯一のアイデアは、xcodebuild -showsdksの出力を何らかのスクリプトと比較することですが、このアイデアは好きではありません。

48
Maciek Sawicki

次を使用して、xcodebuildを最新のSDKで使用できます。

  • xcodebuild -sdk iphoneos、デバイス用
  • xcodebuild -sdk iphonesimulator、シミュレータ用。

これらのオプションは自動ビルドに使用し、XCode 3.2.5以来機能しています

64
David Lacourt

xcodebuild -sdk iphoneos(バージョン番号なし)これを実現します。

8
James J

@jenningjのソリューションを試しましたが、うまくいきました。 Maciek Sawicki、これがあなたのために働くなら、あなたはそれを正しい解決策としてマークすべきです。

また、xcodebuild -showsdkxcodebuild -showsdks

6
ThomasW

試すことができます:xcodebuild -showsdks | grep -Eo "iphoneos([0-9]{1,}\.)+[0-9]{1,}"

0
Ben Marten