2013-09-22 8 views
28

मैंने अपना पहला एक्सकोड 5 केवल ऐप विकसित किया जो 4.6 पर किए गए ऐप्स के समान ही है। यह सिम्युलेटर में और मेरे आईफोन 4, 4 एस और 5 के साथ-साथ मेरे 2 आईपैड में पूरी तरह से ठीक है। हालांकि, जब मैं ऐप स्टोर में जमा करने के लिए इसे सत्यापित करने का प्रयास करता हूं, तो मुझे arm64 से संबंधित त्रुटियों का पूरा ढेर 7.0.0 या उसके बाद की आवश्यकता होती है। मेरे पास तैनाती लक्ष्य 6.1 पर सेट है और ऐसा तब नहीं होता जब मैं अपने पिछले ऐप्स को एक्सकोड 5 में चलाता हूं जो 4.6 में शुरू किया गया था। यदि मैं तैनाती लक्ष्य को 7.0 में बदलता हूं तो सबकुछ ठीक है। यहां क्या हो रहा है? 6.1 पर मान्य करने के लिए मुझे क्या बदलने की आवश्यकता है? धन्यवाद। Screengrabमॉड्यूल डार्विन का निर्माण नहीं कर सका - arm64 मुद्दे

संपादित करें: ठीक है, मैंने बिल्ड सेटिंग्स में आर्किटेक्चर को मानक (armv7, armv7s) में arm64 को हटा दिया, और सबकुछ ठीक था। क्या यह सही काम था? संभवतः यह अभी भी आईफोन 5 एस पर चल रहा है, लेकिन 64-बिट में नहीं। सही बात?

उत्तर

13

आपको आईओएस 7.0 का उपयोग arm64 के निर्माण के लिए तैनाती लक्ष्य के रूप में करना होगा। यदि आप आईओएस 6.1 का समर्थन करना चाहते हैं, तो आपको सबसे अधिक armv7s के साथ रहना होगा। चूंकि arm64 प्रोसेसर 32-बिट मोड में चल सकते हैं, यह कोई मुद्दा नहीं होना चाहिए।

34

आप अभी तक 64-बिट सबमिट नहीं कर सकते हैं और अभी भी आईओएस 6 का समर्थन नहीं कर सकते हैं। हालांकि, आप अगले महीने तक सक्षम होंगे। , हाँ, यदि आप ARMv7 और armv7s है, तो आप अभी भी iPhone 5s चलेंगे हालांकि 32-बिट मोड में:

देखें https://developer.apple.com/news/index.php?id=9162013a

संपादित करें। मैं अब armv7/armv7s के साथ सबमिट करने की सिफारिश करता हूं, और अगले महीने arm64 में जोड़ रहा हूं।


अद्यतन नवंबर 1, 2013:

64-bit Transition Guide for Cocoa Touch की 2013-10-22 संस्करण के अनुसार, अब आप Xcode 5.0.1 का उपयोग एक द्विआधारी कि 64-बिट और शामिल उत्पन्न करने के लिए कर सकते हैं 32- बिट आर्किटेक्चर, और पुराने आईओएस संस्करणों पर चलता है।

  • आप Xcode 5.0.1
  • 64-बिट संस्करण केवल iOS 7.0.3+ चल
  • 32-बिट संस्करण 64-बिट उपकरणों पर चला सकते हैं उपयोग करने के लिए केवल उपकरणों चल रहा है पर चला सकते हैं की जरूरत है आईओएस 5.1.1+
  • 64-बिट उपकरण iOS 7.0.0-7.0.2 चल रहा 32-बिट टुकड़ा
+3

बहुत उपयोगी है, धन्यवाद। – IainGM

5

मैं इस मुद्दे उठ जब मैं एक BOOL चर जोड़ा था का उपयोग करेगा। # आयात यूपीकिट/UIKit.h भी एक त्रुटि के रूप में दिखाया गया है। डिफ़ॉल्ट प्रोजेक्ट से किए जाने वाले परिवर्तनों का एक स्क्रीन शॉट यहां दिया गया है।

से पहले: enter image description here के बाद: enter image description here

0

बदलते जहाँ मेरे प्रोजेक्ट बनाया इस समस्या का समाधान, अपने प्रोजेक्ट बनाते समय, मैं अपने डेस्कटॉप पर सहेजी गई और यह काम किया जब मैं एक भंडार बनाया है, वह इस समस्या से पता चला ।

मुझे आशा है कि यह उत्तर किसी की सहायता करेगा।

0

मेरे पास त्रुटियों का एक ही ढेर था। दो अपवादों के साथ समान या कम मिला।उपयोगकर्ता tjv की तरह मुझे #import पर भी एक त्रुटि हुई। और मेरे पास arm64 से संबंधित लिंकर त्रुटि नहीं थी। लापता arm64 शायद लक्षण में महत्वपूर्ण अंतर है। Preprocessing

खंड -

मेरे समस्या मैं

एप्पल LLVM 5.1 में अपने प्रोजेक्ट फाइल में कई precompiler मैक्रो सेट था। MACRONAME=1 सेट करने के बजाय मैंने MACRONAME= 1 टाइप किया जैसा कि आप पहले ही अनुमान लगा सकते हैं। अतिरिक्त जगह ने सभी अंतर किए।

6

ठीक है, मैं "खोज पथ" में "हमेशा खोज पथ" को "नहीं" में बदलकर समस्या का समाधान करता हूं और सब कुछ ठीक से काम करता है। और मैंने पैरामीटर को "हां" पर सेट किया है, प्रोग्राम अभी भी ठीक है। मुझे नहीं पता कि यह क्यों हुआ।

यह समस्या तब हुई जब मैं फ़ोल्डर की स्थिति बदलता हूं जिसमें प्रोग्राम है।

+0

पता नहीं कैसे और क्यों, लेकिन इससे मेरी मदद की! आपका बहुत बहुत धन्यवाद! –

0

आप बिल्ड सेटिंग्स में मॉड्यूल (सी और उद्देश्य ग) नहीं के रूप में सक्षम स्थापित करना चाहिए: Apple LLVM 5.0 - language - Modules

(Answer from official forum)

enter image description here

संबंधित मुद्दे