2013-03-05 3 views
7

मैं Xcode 4.6 के साथ स्रोतों संकलित करने के लिए कोशिश कर रहा हूँ, 32 बिट वास्तुकला के लिए त्रुटि संकलन है, लेकिन यह त्रुटि मिलती:ऑब्जेक्टिव-सी एआरसी और विरासत रनटाइम

error: -fobjc-arc is not supported on platforms using the legacy runtime 
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1 

क्या गलत है?

उत्तर

14

आप पुराने उद्देश्य-सी 1.0 रनटाइम के साथ एआरसी (स्वचालित संदर्भ गिनती) मिश्रण कर रहे हैं, जो एआरसी का समर्थन नहीं करता है।

ओएसएक्स पर 32-बिट ऐप्स स्वचालित रूप से 1.0 रनटाइम का उपयोग करते हैं, इसलिए आपको अपनी परियोजना के लिए एआरसी को अक्षम करना होगा, और मैन्युअल संदर्भ गणना का उपयोग करना होगा।

+0

यदि आईओएस ऐप संकलित करते समय संदेश प्रकट होता है तो क्या होगा? –

+0

संभावना से अधिक, आप अपने आईओएस ऐप को आईओएस के पुराने संस्करण में लक्षित कर रहे हैं जो एआरसी का समर्थन नहीं करता है। – Alan

+1

इसके अलावा, विजुअल सोर्स सेफ शैतान है। – Alan

1

यह समस्या हाल ही में पुनर्जीवित हुई क्योंकि एक्सकोड 5 ARCHS पैरामीटर को हटा देता है - यदि आप इसे देते हैं। लेकिन अगर आपके पास एक्सकोड 4 के साथ एक बिल्ड सर्वर है तो यह 32 और 64 बिट बनाने के लिए डिफ़ॉल्ट है, जो आपके पास एआरसी सक्षम होने पर विफल रहता है।

अधिक विस्तृत स्पष्टीकरण के लिए मेरे writeup देखें।