2013-01-24 12 views
5

मैं एक गुप्त पहेली को हल करने की कोशिश कर रहा हूं कि मैं वास्तव में स्पष्टीकरण की सराहना करता हूं क्योंकि इससे मुझे उपकरण समझने में मदद मिलेगी और मैं जो करता हूं उसके बारे में आश्वस्त रहूंगा।यदि VALID_ARCHS armv7 armv7a पर सेट है, तो सिम्युलेटर के लिए xcode कैसे बनाता है?

मैं अपने आईफोन ऐप को बनाने के लिए xcodebuild कमांडलाइन को क्रैंक करते समय पहेली में आया था। मैंने इसे इस संदेश के साथ '-sdk iphonesimulator6.0' को अस्वीकार करने के लिए पाया: "किसी भी आर्किटेक्चर को संकलित करने के लिए (ARCHS = i386, VALID_ARCHS = armv7)। "

मैं तो देखा मेरी VALID_ARCHS ARMv7 लिए स्थापित किया गया है और कहा कि (जो मैं विश्वास करने के लिए अपने आप को नेतृत्व इंटेल था)। क्यों xcodebuild सिम्युलेटर के लिए निर्माण करने के लिए मना कर दिया समझाने के लिए दिखाई दिया लेकिन पृथ्वी पर कैसे मेरे XCode आईडीई इसके चारों ओर जाता है और सिम्युलेटर के लिए निर्माण करने के लिए (जो यह करता है) का प्रबंधन करता है

को VALID_ARCHS बदलना:? VALID_ARCHS = "$ (ARCHS_STANDARD_32_BIT)", (जो ARMv7 और armv7a तक विस्तारित है) या VALID_ARCHS = ARMv7 i386 संतुष्ट है प्रतीत होता है xcodebuild सिम्युलेटर के निर्माण के लिए सहमत होने के लिए पर्याप्त है। आपको याद है, पहला मामला अभी भी i386 सूचीबद्ध नहीं है! और मुझे निष्कर्ष निकालना होगा कि i386 कुछ cond में बन जाता है इंप्रेशन, निहित। क्या कोई इस पर पुष्टि कर सकता है और/या विस्तार कर सकता है?

उत्तर

1

i386 पर xcode निर्माण यह इन चरों बदल जाता है, तो आप xcode लॉग नाविक में इस गवाह कर सकते हैं ...

इन चर Xcode क्रम में हेरफेर i386 पर चल

VALID_ARCHS = i386 अनुमति देने के लिए कर रहे हैं archs = i386

आप निम्नलिखित तरीके से xcodebuild आदेश लागू करके एक ही कर सकते हैं:

xcrun xcodebuild VALID_ARCHS=i386 ARCHS=i386 ONLY_ACTIVE_ARCH=NO -arch i386 -sdk iphonesimulator7.1 -configuration Debug 
संबंधित मुद्दे