我試圖使用xcodebuild
在工作區中構建多項目項目。當XCode構建工作空間時,它會自動將所有構建工件放置在DerivedData的公共目錄中,以便每個項目都可以訪問它的依賴關係。Xcodebuild'ing工作區和設置自定義構建路徑
如果我使用這個命令:
xcodebuild -workspace myWorkspace.xcworkspace -schema builtIt -configuration Release
Eveything工作,但文物放置在平時得到的數據目錄。然後我想要出現在我可以從CI構建中訪問的特定目錄中。所以,我想這個
xcodebuild -workspace myWorkspace.xcworkspace -schema builtIt -configuration Release SYMROOT=build/products OBJROOT=build/intermediates
然而xcodebuild聯編失敗,這句話
Details: Failed to load dependencies output contents from ``/Users/d4rkf1br3/projects/dNodi/build/intermediates/dNodi.build/Debug-iphoneos/dNodi.build/StaticAnalyzer/normal/armv7/DNRootSelector.d''.
Error: Error Domain=NSCocoaErrorDomain Code=260 "The file 「DNRootSelector.d」 couldn’t be opened because there is no such file."
UserInfo=0x4012fea40 {NSFilePath=/Users/d4rkf1br3/projects/dNodi/build/intermediates/dNodi.build/Debug-iphoneos/dNodi.build/StaticAnalyzer/normal/armv7/DNRootSelector.d, NSUnderlyingError=0x4012fc240 "The operation couldn’t be completed. No such file or directory"}.
User info: {
NSFilePath = "/Users/d4rkf1br3/projects/dNodi/build/intermediates/dNodi.build/Debug-iphoneos/dNodi.build/StaticAnalyzer/normal/armv7/DNRootSelector.d";
NSUnderlyingError = "Error Domain=NSPOSIXErrorDomain Code=2 \"The operation couldn\U2019t be completed. No such file or directory\"";
}
這個問題似乎是xcodebuild聯編不再使用工作區中的所有項目的中央目錄中,存儲僞影改爲每個項目。因此它無法找到正在編譯的代碼和其他項目中產生的工件之間的依賴關係。
有誰知道在命令行上設置的正確參數?
Xcode的構建設置引用兩年沒有更新,所以我不知道是否有我可以應用的新構建設置。
將此設置爲接受的答案,因爲XCode 5處理命令行構建要好得多。 – drekka 2014-04-30 01:11:42
我正在使用CONFIGURATION_BUILD_DIR =「$ WORKSPACE/Build」OBJROOT =「$ WORKSPACE/Build」SYMROOT = $ WORKSPACE/Build DSTROOT = $ WORKSPACE/Build -destination for my builds -derivedDataPath修復了我所看到的大量隨機問題。 – StackRunner 2014-07-30 10:21:39