2013-08-24 5 views
18

के लिए मैं दो रास्ते है कि मैं Xcode चाहते हेडर के लिए खोज करने के लिए है:उपयोगकर्ता हैडर खोजें पथ Xcode

"/ MyProject/lib1/शामिल हैं"
"/ MyProject/lib2/शामिल हैं"

एक्सकोड के उपयोगकर्ता शीर्षलेख खोज पथ के अंदर उन दो पथों को जोड़ने के लिए सही वाक्यविन्यास क्या है? मैंने "/ myproject/lib1/include" की कोशिश की; "/ myproject/lib2/शामिल करें"

लेकिन यह काम नहीं किया। यह शिकायत की कि object1.h नहीं मिला। ऑब्जेक्ट 1 अंदर/myproject/lib1/

मैंने पहले से ही पूरे/myproject/lib1/फ़ोल्डर को शामिल किया है और/myproject/lib2/लक्ष्य प्रोजेक्ट में फ़ोल्डर शामिल किया है।

+0

किस तरह से यह काम नहीं करता? आपको क्या त्रुटि मिली? जब आप "एक्सकोड के उपयोगकर्ता शीर्षलेख खोज पथ" कहते हैं, तो आपका क्या मतलब है? परियोजना में? लक्ष्य में? कहा पे? कृपया आपने जो प्रयास किया और परिणाम क्या था, उसके बारे में कुछ विवरण जोड़ें। – user1118321

+0

^बिल्ड सेटिंग्स के अंतर्गत देखो उपयोगकर्ता शीर्षलेख खोज पथ नामक एक अनुभाग है। – lilzz

+0

हां, यह दो बार है। क्या आपने इसे परियोजना या लक्ष्य के लिए सेट किया था? – user1118321

उत्तर

24

डीडी क्या आप वास्तव में अग्रणी/पथ में डालते हैं? क्योंकि यह एक पूर्ण पथ है और शायद आपका मतलब क्या नहीं है।

आप इसे $(SRCROOT) का उपयोग करके सापेक्ष स्थान पास कर सकते हैं जो Xcode प्रोजेक्ट फ़ाइल वाली निर्देशिका का विस्तार करता है।

तो, अपनी परियोजना फ़ाइल संभालने myroject निर्देशिका में है तो आप अपने हैडर खोज पथ में इस रखना चाहिए:

$(SRCROOT)/lib1/include 
$(SRCROOT)/lib2/include 
+1

हेडर खोज पथ की प्रविष्टि स्थान में केवल एक पंक्ति है। क्या आपको उद्धरणों में रखने की ज़रूरत है? और विभाजक के रूप में अर्धविराम? – lilzz

+0

प्रत्येक पंक्ति पर एक रखें। – Abizern

+1

हाँ, मैंने किया। और जब यह विस्तार हुआ, यह मेरे पूर्ण पथ की तरह दिखता है। एक ही बात है। यह अभी भी शिकायत करता है कि ऑब्जेक्ट 1.h नहीं ढूंढ सकता है जिसमें/lib1/फ़ोल्डर शामिल है। भले ही मैं संपूर्ण परियोजना को लक्षित प्रोजेक्ट में जोड़ूं, लेकिन जब मैं अपनी संपत्तियों पर राइट क्लिक करता हूं तो मुझे लक्ष्य सदस्यता दिखाई नहीं देती है।इससे मुझे आश्चर्य होता है कि object1.h वास्तव में लक्ष्य में जोड़ा गया है या नहीं। मैं एक बार में एक .h फ़ाइल को लक्षित करने के लिए नहीं जोड़ना चाहता, मैं अंदर सबकुछ जोड़ना चाहता हूं जिसमें फ़ोल्डर को लक्षित करना शामिल है। – lilzz

3

आप एकाधिक हैडर पथ है, तो उपयोग अंतरिक्ष उन्हें विभाजित करने के लिए, या डबल इनपुट क्लिक करें अग्रिम सेटिंग के लिए हेडर पथ का टेक्स्ट बॉक्स। एक और अनुशंसित तरीका आपके एक्सकोड सहायता मेनू में "उपयोगकर्ता शीर्षलेख खोज पथ" खोजना है।

6

आप अपने प्रोजेक्ट निर्देशिका का उपयोग करना चाहते मान लीजिए, तो आप का उपयोग करना चाहिए: अगर अपनी परियोजना पथ रिक्त स्थान है

"$PROJECT_DIR" 

डबल उद्धरण सलाह दी जाती है।

यदि आप फ़ोल्डरों के भीतर भी खोजना चाहते हैं तो रिकर्सिव सक्षम करें। वैकल्पिक रूप से, आप "$(SRCROOT)"

+0

"आपके उद्धरण पथ में रिक्त स्थान होने पर" डबल कोट्स की सलाह दी जाती है " –

0

एक्सकोड 6.1.1 के लिए भी आपको खोज पथ सेट करना होगा-> हमेशा 'पथ' पर उपयोगकर्ता पथ खोजें ... और उपरोक्त पदों में निर्दिष्ट उपयोगकर्ता शीर्षलेख खोज पथ हैं।

0

एक्सकोड 9.0 के लिए, मैं हेडर इनपुट अनुभाग (डीबग और रिलीज के दाईं ओर के बगल में) पर डबल क्लिक करने के लिए सक्षम था ताकि मेरे लिए एकाधिक हेडर पथ आसानी से जोड़ने के लिए मेनू खोल सकें।

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