尝试使用xcodebuild编译静态库时,我遇到了一个奇怪的问题。 项目的配置是: ARCHS = $(ARCHS_STANDARD) VALID_ARCHS = $ ARCHS 它是使用Xcode 5.1.1执行的。
现在出现了一个奇怪的部分 - 与Jenkins连接的机器上构建的项目产生了所有5种架构(armv7 armv7s arm64,i386,x86_64)的胖库,但是当我的(64位)Mac上启动了构建时。只得到四个 - 缺少x86_64。没有代码更改,干净的回购,完全相同的构建例程。
我想知道可能导致这种差异的原因。我想这可能是我身边的某种环境设置,但不知道它可能是什么。项目配置不受怀疑 - 它在另一台机器上创建了适当的胖库。
我很感谢您的建议。
编辑:也没有错误。 xcodebuild的行为就像没有指定架构一样 - 为i386编译iphonesimulator构建。 另外值得注意的是 - Xcode创建了所有体系结构,只有从命令行执行的xcodebuild才有问题。
答案 0 :(得分:0)
尝试将-destination标志添加到xcodebuild命令中。
xcodebuild -workspace MyWorkspace.xcworkspace -scheme MyScheme -destination 'platform=OS X,arch=x86_64' test
以上是xcodebuild manual page的一个例子。
我有一个类似的问题,我希望xcodebuild为模拟器制作i386构建并继续创建Armv7,直到我将该标志添加到我的命令。