6

谁能解释为什么我在使用 GUI 和 xcodebuild 命令行编译相同的 XCode 4.x 项目时得到不同的结果?

XCode 图形用户界面

  1. 执行清洁
  2. 构建“发布”目标
  3. 构建成功

xcodebuild

  1. 执行清洁
  2. 运行“xcodebuild -configuration Release”
  3. 导致以下错误:

    /Developer/usr/bin/gcc-4.0 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=gnu99 -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -Wreturn-type -Wunused -变量 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -fvisibility=hidden -mmacosx-version-min=10.4 -c "/Users/XXX/Extensions/NSFileManager_Extensions.m" -o "/Users/XXX/Developer/中间体/YourApp.build/Release/YourApp.build/Objects-normal/ppc/NSFileManager_Extensions.o" /Users/XXX/Extensions/NSFileManager_Extensions.m:15:60:错误:ToxicRegularExpressions/ToxicRegularExpressions.h:没有这样的文件或目录** 构建失败 **

以下构建命令失败: CompileC "/Users/XXX/Developer/Intermediates/YourApp.build/Release/YourApp.build/Objects-normal/ppc/NSFileManager_Extensions.o" /Users/XXX/Extensions/NSFileManager_Extensions.m 正常 ppc 目标-c com.apple.compilers.gcc.4_0

最后是 GUI + xcodebuild

  1. 在 GUI 中执行清理
  2. 构建“发布”目标
  3. 构建成功
  4. 运行“xcodebuild -configuration Release”
  5. 构建成功
4

3 回答 3

2

尝试在命令行上传递 SDK,如下所示:

xcodebuild -configuration Release -sdk iphonesimulator3.0
于 2009-09-30T16:45:03.240 回答
1

指定您要构建的方案-scheme。如果没有它,xcodebuild可能会使用“旧版”目标驱动的构建系统,这是不同的。在重新分配项目时,您可能希望为此共享一些方案。

请参阅:xcodebuild 的后记再次用僵尸 OBJROOT 让我发疯

于 2016-03-16T13:43:41.313 回答
0

您是否安装了多个版本的 XCode?如果是这样,对相关问题的回答可能会解决您的问题:https ://stackoverflow.com/a/11129067/567039

于 2012-11-20T11:44:55.937 回答