为什么xcodebuild提供与XCode UI不同的构建结果

时间:2012-05-18 12:54:39

标签: xcode build xcodebuild workspace

我在工作区中有一系列项目,并尝试使用以下类型的命令通过命令行构建它们:

"Xcodebuild -project XXX"
or 
"Xcodebuild -workspace XXX -scheme YYY"

我的一些项目构建正常,但其他项目给出了奇怪的错误,例如“'XXX'例如消息未声明带选择器的方法”或“ld:找不到-lMyLibrary的库”

然而,所有这些项目都可以在XCode UI中正常构建而没有问题。

基于此,似乎命令行和UI构建使用的是不同的工具集,但这似乎是一个非常糟糕的主意,所以我希望我错了。或者可能在命令行构建中只设置了几个不同的构建标志。

我可以尝试逐个解决问题,但我希望我能编写一个与UI完全相同的构建类型的脚本。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

不包括-configuration,xcodebuild将使用每个项目的默认配置。通常是发布。在Xcode中,无论默认情况如何,您选择的配置都将应用于每个项目。

鉴于您的错误,您最可能的问题是您已经使用了构建窗格(why I hate the build pane for large projects),并且您已经犯了一个经典的错误,即为Debug而不是所有配置应用某些设置。