我有一个Xcode项目。在交互式Xcode中,我可以使用Ad_Hoc_Distribution配置运行/构建/存档,但是当我运行时:
/usr/bin/xcodebuild -configuration Ad_Hoc_Distribution clean build
在我的项目中,我收到一个错误:
/Users/esg/Documents/app-ios/testapp/testapp/AppDelegate.h:14:9: fatal error: 'RestKit/RestKit.h' file not found
#import <RestKit/RestKit.h>
^
1 error generated.
当它通过接口工作时会导致命令行失败的原因是什么?
答案 0 :(得分:2)
我的团队遇到了同样的问题。从Xcode 4.3.2升级到4.4.1后,以前找不到的文件不再存在。
通过比较xcodebuild与Xcode自己的构建日志的输出,然后比较我们的Xcode 4.3.2构建日志,我们发现xcodebuild和Xcode IDE不再构建具有相同的头依赖性。当xcodebuild运行4.4.1版本时,它会对包含文件使用不正确的基本目录,该目录不包括通向.xcodeproj目录的整个当前路径。文件夹路径中的最后两个目录节点似乎被截断。
但是从Xcode IDE构建工作正常。
我们通过添加正确的标头路径解决了这个问题,正如Xcode报告的那样,它是一个额外的标头依赖:
使用xcodebuild时,
$(SRCROOT)似乎被错误地解释了。它应该包含我在第二行中插入的两个子目录。
我只能得出结论,xcode / xcodebuild交互中存在一个成熟而又辛辣的新错误,但你可以修复你的头依赖关系,至少可以编译。
答案 1 :(得分:1)
请参阅我自己的问题。
xcodebuild header files not found in ReskIt
我通过改变一切来解决它,但通过添加工作区和方案并使用它来构建。所有标头设置都与为Xcode GUI设置的设置相同。