2011-12-01 10 views
18

वहाँ तीन XCode सेटिंग्स बिल्ड में अलग अलग खोज रास्ते हैं:iOS: स्पष्ट अलग खोजें पथ

  • फ्रेमवर्क खोजें पथ
  • हैडर खोजें पथ
  • लाइब्रेरी खोज पथ

किसी को भी स्पष्ट किया जा सका वे पथ क्या करते हैं और उनका क्या उपयोग किया जाता है?

उत्तर

20

फ्रेमवर्क खोज पथ: frameworks (.framework बंडलों) खोज करने के लिए जहां प्रणाली चौखटे पथ के अतिरिक्त। आईओएस विकास में बहुत ज्यादा उपयोग नहीं किया गया, आधिकारिक तौर पर कोई डेवलपर आईओएस ढांचा नहीं है।

मैक विकास में, यदि आप प्रोजेक्ट में किसी तृतीय पक्ष ढांचे को खींचते हैं तो यह स्वचालित रूप से सेट हो जाता है। अन्यथा, बस इसे कंटेनर निर्देशिका में सेट करें जहां आपने ढांचे को सहेजा था।

FRAMEWORK_SEARCH_PATHS = "/path/to/frameworks/container/directory" 

हैडर खोज पथ:

xcconfig में आप इस चर का उपयोग फाइलें सिस्टम पथ के अतिरिक्त हेडर फाइल (.h फ़ाइलें) के लिए खोज करने के लिए जहां। यदि आप किसी तृतीय पक्ष लाइब्रेरी का उपयोग कर रहे हैं तो आमतौर पर आपको इसकी आवश्यकता होगी। इसे निर्देशिका में सेट करें जहां आपके पास हेडर फाइलें हैं। यदि आप हेडर को शामिल करने के लिए निर्देशिका का उपयोग करते हैं (उदाहरण: #import "mylibrary/component.h") इसे मूल निर्देशिका में सेट करें।

HEADER_SEARCH_PATHS = "/path/to/headers/container/directory" 

लाइब्रेरी खोज पथ:

xcconfig में आप इस चर का उपयोग फाइलें सिस्टम पथ के अतिरिक्त पुस्तकालय फ़ाइलें खोजने के लिए जहां। यदि आप प्रोजेक्ट में लाइब्रेरी (.a फ़ाइलें) खींचते हैं तो एक्सकोड स्वचालित रूप से सेट हो जाएगा। इसे मैन्युअल रूप से सेट करने के लिए, निर्देशिका का उपयोग करें जहां लाइब्रेरी स्थित है।

LIBRARY_SEARCH_PATHS = "/path/to/libraries/container/directory" 

तीनों उद्धरण साथ रास्ते की एक सूची,, अंतरिक्ष से अलग कर दिया पकड़ कर सकते हैं:

xcconfig में आप इस चर का उपयोग फ़ाइलें।

0

इन्हें फ्रेमवर्क, शीर्षलेख फ़ाइलें, या पुस्तकालयों की खोज के लिए उपयोग किया जाता है जो सिस्टम खोज पथ (QTKit.Framework, मानक C++ शीर्षलेख फ़ाइलें, आदि) में नहीं हैं।

इसके लिए मेरा सबसे आम उपयोग मेरे कोड में बूस्ट हेडर लाइब्रेरी (* .hpp) फ़ाइलों का उपयोग कर रहा है, मैं हेडर खोज पथ में सापेक्ष पथ "../lib/Boost/1.46.1" जोड़ता हूं।

मुझे प्रत्येक लक्ष्य में प्रोजेक्ट स्तर पर इसे जोड़ने के लिए बेहतर लगता है। इस तरह लक्ष्य लक्ष्य प्राप्त करते हैं और यदि मैं बूस्ट के संस्करण को अद्यतन करता हूं तो इसे केवल एक ही स्थान पर बदला जाना चाहिए।

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