सेट करना मैं वर्कस्पेस में एक बहु-प्रोजेक्ट प्रोजेक्ट बनाने के लिए xcodebuild
का उपयोग करने का प्रयास कर रहा हूं। जब एक्सकोड एक वर्कस्पेस बनाता है तो यह स्वचालित रूप से सभी निर्मित कलाकृतियों को DerivedData में एक सामान्य निर्देशिका में रखता है ताकि प्रत्येक प्रोजेक्ट इसकी निर्भरताओं तक पहुंच सके।एक वर्कस्पेस को एक्सकोडबिल्ड करना और कस्टम बिल्ड पथ
अगर मैं इस आदेश का उपयोग करें:
xcodebuild -workspace myWorkspace.xcworkspace -schema builtIt -configuration Release
eveything काम करता है, लेकिन हमेशा की तरह कलाकृतियों व्युत्पन्न डेटा निर्देशिका में रखा जाता है। मैं फिर एक विशिष्ट निर्देशिका में दिखाना चाहता हूं जिसे मैं सीआई बिल्ड से एक्सेस कर सकता हूं। इसलिए मैं करने की कोशिश की इस
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 नहीं रह कार्यक्षेत्र में सभी परियोजनाओं के लिए एक केंद्रीय निर्देशिका उपयोग कर रहा है प्रतीत होता है के साथ विफल रहता है और में कलाकृतियों भंडारण है इसके बजाय प्रत्येक परियोजना। इसलिए यह अन्य परियोजनाओं में उत्पादित संकलित और कलाकृतियों के बीच निर्भरताओं का पता नहीं लगा सकता है।
क्या कोई भी कमांड लाइन पर सेट करने के लिए सही पैरामीटर जानता है?
एक्सकोड बिल्ड बिल्डिंग संदर्भ दो साल तक अपडेट नहीं किया गया है, इसलिए मुझे नहीं पता कि नई बिल्ड सेटिंग्स क्या लागू हो सकती हैं।
इसे स्वीकृत उत्तर के रूप में सेट करना क्योंकि एक्सकोड 5 हैंडल कमांड लाइन बहुत बेहतर बनाता है। – drekka
मैं CONFIGURATION_BUILD_DIR = "$ वर्कस्पेस/बिल्ड" OBJROOT = "$ वर्कस्पेस/बिल्ड" SYMROOT = $ वर्कस्पेस/बिल्ड DSTROOT = $ वर्कस्पेस/बिल्ड-डिस्टिनेशन के निर्माण के लिए उपयोग कर रहा था -डिटेड डेटापाथ मैंने यादृच्छिक मुद्दों को ठीक कर दिया था। – StackRunner