2010-07-28 8 views
41

मेरे पास एक समस्या है जो मैंने एक्सकोड के अपने संस्करण को अपग्रेड करते समय पॉप अप किया। मैं इकाई परीक्षण का उपयोग करता हूं, और अब जब मैं SenTestingKit (#import <SenTestingKit/SenTestingKit.h>) आयात करने का प्रयास करता हूं, तो मुझे यह त्रुटि मिलती है: SenTestingKit/SenTestingKit.h: No such file or directoryएक्सकोड - सेनटेस्टिंगकिट नहीं मिला

मैं अपने निर्माण सेटिंग्स पर ध्यान दिया है, और मैं निम्नलिखित विन्यास विकल्प हैं:

== Linking == 
Other Linker Flags: -framework Foundation -framework SenTestingKit -framework UIKit 
Prebinding: No 

== Search Paths == 
Debug Configutation: "/iphonesimulator4.0/Developer/Library/Frameworks" "/Xcode4/Library/Frameworks" 

मैं /Xcode4/Library/Frameworks चिह्नित किया है और SenTestingKit.framework/ निर्देशिका वहाँ है।

तो मैं क्या याद आ रही है?

+1

सैम, रिलीज में सभी एप्पल सॉफ्टवेयर एक SDK किया जा रहा है, तो आप नहीं (पढ़ें: शायद नहीं होना चाहिए) होगा: ढांचा/SenTestingKit वास्तुकला है Apple डेवलपर मंचों के बाहर इस पर चर्चा करने में सक्षम हो। वहां पोस्ट करें, एक बग फाइल करें। – typeoneerror

+5

टाइपोनियर, आपका मतलब एनडीए है। यह एक एसडीके है। –

+0

ऐप्पल डेवलपर फ़ोरम पर इस तरह के प्रश्न बेहतर पूछे जाते हैं, जहां आपको उत्तर पाने की अधिक संभावना होती है। – Abizern

उत्तर

0

आपको लगता है कि Xcode फ्रेमवर्क खोजें पथ जाँच कर रहा है जांच करना चाह सकते: Framework Search Paths

+0

हां। मैंने फ्रेमवर्क खोज पथ में $ {DEVELOPER_LIBRARY_DIR}/फ्रेमवर्क जोड़े और इसे ठीक किया। –

1

मेरी फ्रेमवर्क खोजें पथ के लिए, मैं स्पष्ट रूप से /$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.1.sdk/Developer/Library/Frameworks जोड़ दिया है। सिम्युलेटर और डिवाइस के लिए सही ढंग से संकलित करता है।

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

screenshot

+0

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

57

मैं XCode में एक नया परीक्षण का मामला बनाते समय यह एक ही मुद्दा था। हालांकि, यह टेस्ट केस बनाते समय गलत लक्ष्य चुनने की मूर्खता के कारण था।

"फ़ाइल नया ..." का उपयोग करके, टेस्ट केस को शामिल किया गया था और परीक्षण केस के लक्ष्य के बजाय लक्षित एप्लिकेशन सेटिंग्स के साथ संकलित किया गया था। बिल्ड चरण टैब की जांच करना और "संकलन स्रोत" प्रकटीकरण में देखकर मेरा विशेष मुद्दा सामने आया। मेरी फ्रेमवर्क खोजें पथ तक /Xcode 4.0.2

मैं "${DEVELOPER_LIBRARY_DIR}/Frameworks" (उद्धरण के साथ) जोड़कर तय:

+2

धन्यवाद कि पूरी तरह से चाल चल रही है! –

+0

हाँ यह काम किया। मैंने पहले यह किया लेकिन मुझे लगता है कि ऐपकोड इसे वापस रीसेट कर देता है। यदि आप ऐपकोड डबल चेक का उपयोग कर रहे हैं। – vaughan

+0

मुझे लगता है मैं दो बार – DCMaxxx

6

मैं क्योंकि मेरी Xcode स्थापना में एक अंतरिक्ष इस मुद्दे था।

+0

मेरे मामले मैं भी 'लगभग $ (SDKROOT) उद्धरण जोड़ने के लिए किया था/डेवलपर/Library/Frameworks' में वोट दें पाती। – azdev

+0

या बस '$ (DEVELOPER_FRAMEWORKS_DIR_QUOTED)' का उपयोग करें;) – Pascal

18

मुझे xcode 4.3 में अपग्रेड करने के बाद यह समस्या थी। जब तक मैं this post पर नहीं आया तब तक कुछ भी काम नहीं कर रहा था। मेरे पास पहले से ही एक ही खोज पथ थे, लेकिन आदेश को बदलकर इस मुद्दे को हल किया गया।

तो लेख से, आपको अपने फ्रेमवर्क खोज पथ, में इस क्रम में में दो निम्न मानों की आवश्यकता है।

$(SDKROOT)/Developer/Library/Frameworks 
$(DEVELOPER_LIBRARY_DIR)/Frameworks 
+0

ऐसा इसलिए है क्योंकि (SDKROOT)/डेवलपर/लाइब्रेरी/फ्रेमवर्क आर्म है, $ (DEVELOPER_LIBRARY_DIR)/फ्रेमवर्क इंटेल – valexa

+0

@velexa है - तो आपका मुद्दा यह है कि दूसरा एक अनावश्यक है या ...? वैसे भी, केवल उस जानकारी को रिले करना जो मुझे इस मुद्दे पर था और उस बोर्ड पर समाधान wok लग रहा था। – DougW

+0

मैं सिर्फ क्यों अपने समाधान काम करता समझा रहा हूँ, हाँ इंटेल ढांचे के लिए पथ को जोड़ने एक हाथ लक्षित करने के लिए बनाता है अनावश्यक – valexa

1

सभी के लिए एक बार इस साफ़ करने के लिए, वहाँ Xcode SDK में तीन SenTestingKit चौखटे, एक, ओएस एक्स के लिए है एक iOS के लिए है और एक सिम्युलेटर के लिए है।

था आप भाग गया "लाइपो -info" उन पर आप देखा होगा कि वसा फ़ाइल में

आर्किटेक्चर: /Developer/Library/Frameworks/SenTestingKit.framework/Versions/A/SenTestingKit हैं: x86_64 i386

वसा फ़ाइल में

आर्किटेक्चर: ARMv7

गैर वसा: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/Developer/Library/Frameworks/SenTestingKit.framework/SenTestingKit वास्तुकला है फ़ाइल:/डेवलपर/प्लेटफार्म/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk/Developer/Library/Frameworks/SenTestin gKit।i386

+0

अभी भी इसे साफ़ नहीं करता है। जब आप एक्सकोड में फ्रेमवर्क जोड़ते हैं तो यह आपको केवल "सेनटेस्टिंगकिट" का विकल्प देता है, यह आपको एक विशिष्ट गैर ओएसएक्स का चयन करने नहीं देता है। – imaginethepoet

+0

आपके लिए खराब एक्सकोड है, मैं हमेशा खोजक से एक्सकोड में फ्रेमवर्क फ़ोल्डर को मैन्युअल रूप से खींचता हूं और पार्टी को 90 के दशक की तरह – valexa