我有一个
Xcode项目,它包含几个子项目(编译为lib文件的框架项目)作为主项目的一部分.该项目在Xcode中正确编译/构建(从hyarchial树的底部到主app项目正确构建子项目).
我现在正在尝试为持续集成设置项目,当我尝试使用xcodebuild从命令行构建时…由于没有找到应该在主项目之前构建的.a文件,构建失败.
我可以独立地从cmd行构建每个lib文件,但整个合并项目失败.即使我在目标方案中正确管理了依赖项,并且如果我在使用xcodebuild时指定目标或方案,它仍然不会构建子项目.
有没有办法让xcodebuild构建子项目,然后像Xcode IDE一样构建主项目?如果没有,如果我将整个项目转换为工作区,这会有效吗?
任何帮助或建议将不胜感激.我在Mavericks上运行Xcode 5.1.1.
解决方法
解决方案很简单…使用“-scheme”标志而不是“-target”允许项目正确构建(所有子项目/框架然后目标应用程序)
失败:
xcodebuild -project MyProject.xcodeproj -target MyProject -sdk "iphoneos" -configuration “Build” archive OBJROOT=../../build_iOS/Obj.root SYMROOT=../../build_iOS/Sym.root
如预期的那样:
xcodebuild -project MyProject.xcodeproj -scheme MyProject -sdk "iphoneos" -configuration “Build” archive OBJROOT=../../build_iOS/Obj.root SYMROOT=../../build_iOS/Sym.root
无需将项目转换为工作区.