xcodebuild的参数,用于使用最新的sdk.

Mac*_*cki 52 ant xcode hudson build ios

我使用ant exec任务执行xcodebuild来构建一些iOS项目hudson.我希望能够以不允许指定sdk版本的方式创建脚本,因为在hudson slave或我的iOS项目上更新sdk之后我的所有项目都失败了....

自从目标设置中的sdk 4.2以来,xcode中有很好的选择 Base SDK - Latest iOS

我不必-sdk在xcodebuild命令中提供param,但后来(我认为)它是从xcode项目中获取的并且它很糟糕,因为有些人可以在提交期间意外地将目标从模拟器更改为设备.

我需要一些不变的东西.我不想使用env变量,因为我希望能够在dev机器上运行这个ant任务,并且不想重新考虑在所有机器上设置它.

不幸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
Run Code Online (Sandbox Code Playgroud)

我需要类似的东西-sdk iphoneosLatest.我唯一的想法是削减xcodebuild -showsdks一些脚本的输出,但我不喜欢这个想法.

Dav*_*urt 67

您可以使用xcodebuild和最新的SDK:

  • xcodebuild -sdk iphoneos,对于设备
  • xcodebuild -sdk iphonesimulator,对于模拟器.

我们将这些选项用于自动构建,并且自XCode 3.2.5起一直在运行


Jam*_*s J 8

我相信你可以使用xcodebuild -sdk iphoneos(没有版本号)来实现这一目标.


Tho*_*asW 6

我尝试了@jenningj的解决方案,它对我有用.Maciek Sawicki,如果这适合你,你应该把它标记为正确的解决方案.

另外,xcodebuild -showsdk应该是xcodebuild -showsdks.