2015-05-26 7 views
9

मेरे पास libBlah.a file उपकरण के साथ कई स्थिर libs हैं I समर्थित आर्किटेक्चर की जांच कर सकते हैं। (arm64 या i386)एक स्थिर पुस्तकालय के आईओएस परिनियोजन लक्ष्य की जांच करें

स्थिर lib के iOS Deployment Target जांचने के लिए कोई उपकरण है?

enter image description here

उत्तर

15

आप लाइब्रेरी फ़ाइल का निरीक्षण करने के लिए otool का उपयोग कर सकते हैं। कुछ प्रयोगों के साथ मैंने पाया कि झंडे -lv ने मुझे उपयोगी आउटपुट दिया। निर्देशिका आपकी लाइब्रेरी में है के लिए एक टर्मिनल विंडो और स्विच खोलें:

cd /path/to/parent/directory 

(सुझाव: आप टर्मिनल में एक खोजक विंडो के टाइटल बार से आइकन खींच सकते हैं और यह आपके लिए पथ में प्रवेश करेंगे) ।

otool -lv myStaticLibrary.a | less 

less में, प्रकार / (खोज) और फिर LC_VERSION_MIN_IPHONEOS: फिर निम्न आदेश टाइप करें।

Load command 1 
     cmd LC_VERSION_MIN_IPHONEOS 
    cmdsize 16 
    version 7.0 
     sdk n/a 

तैनाती लक्ष्य अगले version के लिए मूल्य होना चाहिए: आप कुछ इस तरह देखना चाहिए।

+0

नवीनतम संस्करण में बनाई गई .a फ़ाइल (सार्वभौमिक) परियोजना परिनियोजन लक्ष्य में काम करेगी (कहें 9.3 8.0 पर काम करेगा)? –

-2

आप preprocess मैक्रो का उपयोग कर की कोशिश की है?

#if IPHONEOS_DEPLOYMENT_TARGET (iOS Deployment Target) 
+0

इस एक अनुमान, एक जवाब है, या एक टिप्पणी के रूप में इरादा? कोई फर्क नहीं पड़ता कि यह क्या है, यह सवाल का जवाब नहीं देता है। – nhgrif

+1

यह मदद करने का प्रयास है, मेरे दोस्त =) और "इससे कोई फर्क नहीं पड़ता कि यह क्या है" मुझे आपके लिए इतनी गड़बड़ होने का कोई कारण नहीं दिख रहा है। यदि यह मदद नहीं करता है, तो कम से कम मैंने कोशिश की। – EdgarY

5

लक्ष्य ओएस संस्करण स्थिर पुस्तकालय के माचो हेडर में LC_VERSION_MIN_IPHONEOS लोड कमांड में एन्कोड किया गया है।

otool -l mylib.a | grep -A 3 LC_VERSION 

उदाहरण आउटपुट:: आप के माध्यम से इसे देख सकते हैं

 cmd LC_VERSION_MIN_IPHONEOS 
    cmdsize 16 
    version 9.0 
     sdk n/a 
संबंधित मुद्दे