2011-11-23 7 views
12

के लिए कोई एआरसी बंद कैसे कर सकता है मुझे पता है कि मुझे यह पूरा करने के लिए एक्सकोड 4 में संकलन स्रोतों में कंपाइलर ध्वज -fno-objc-arc जोड़ना है। लेकिन यह काम नहीं कर रहा है। यहां तक ​​कि जोड़े गए ध्वज के साथ भी मुझे अपने KeychainItemWrapper.m फ़ाइल में त्रुटियों में त्रुटि मिल रही है, मुझे दावा है कि मुझे सी पॉइंटर्स के लिए __bridge का उपयोग करने की आवश्यकता है।विशिष्ट फ़ाइल

I have added the required flag to the compiled sources... what am I missing?

मेरे परियोजना एआरसी सुरक्षित है, लेकिन एप्पल कीचेन के साथ बातचीत के लिए संदर्भ प्रदान नहीं की है। मैं सिर्फ उस फ़ाइल के लिए एआरसी को अक्षम करना चाहता हूं। मैं और क्या याद कर रहा हूँ?

+0

हैं KeychainItemWrapper.m और KeychainItem.m दो अलग-अलग फ़ाइलों के लिए गिनती: https://github.com/jaminguy/NoArc

अधिक जानकारी के लिए इस उत्तर देखें:

मैं एक नमूना परियोजना एक उदाहरण है कि किसने बनाया? क्या आपने KeychainItem.m के साथ एआरसी को भी अक्षम कर दिया है? –

+0

वह एक टाइपो था, क्षमा करें। – Justin

+0

क्या आपने बिल्ड आउटपुट को देखा है कि यह उस फ़ाइल को संकलित करते समय वास्तव में उन कंपाइलर झंडे को शामिल नहीं किया गया है या नहीं? – mharper

उत्तर

6

मैंने विभिन्न परियोजनाओं में 4.2 में मेरे लिए एक से अधिक बार ऐसा किया है, लेकिन फिर मैं इसे बग रिपोर्ट के लिए विश्वसनीय रूप से पर्याप्त रूप से पुन: उत्पन्न करने में सक्षम नहीं हूं। लेकिन मैं अपने मामलों में कह सकता हूं, एक स्वच्छ निर्माण ने इसे साफ़ कर दिया।

+0

बहुत अधिक सिर तेज़ होने के बाद, यह वह समाधान था जिस पर मैं अंततः पहुंचे। धन्यवाद :) – Justin

1

संपादन मेनू पर क्लिक करें, रेफैक्टर पर जाएं> उद्देश्य-सी एआरसी में कनवर्ट करें ... अपने प्रोजेक्ट नाम के बगल में प्रकटीकरण त्रिकोण पर क्लिक करें और उन सभी फ़ाइलों को जांचें जिनके लिए आप एआरसी का उपयोग करना चाहते हैं।

1

उन फ़ाइलों के लिए -fno-objc-arc कंपाइलर ध्वज जोड़कर अलग-अलग फ़ाइलों के लिए एआरसी को अक्षम करना संभव है।

आप लक्ष्य में कंपाइलर झंडे जोड़ते हैं -> चरण बनाएं -> संकलन स्रोत। आपको कंपाइलर ध्वज के नीचे पंक्ति के दाएं कॉलम पर डबल क्लिक करना होगा। आप फ़ाइलों का चयन करने के लिए cmd बटन दबाकर और फिर ध्वज संपादन बॉक्स लाने के लिए एंटर दबाकर इसे एकाधिक फ़ाइलों में जोड़ सकते हैं। अक्षम स्वत: संदर्भ कुछ फ़ाइलें