2011-09-18 9 views
23

मैं एक आईओएस ऐप में MailCore संकलित करने की कोशिश कर रहा हूं, और लिंकर शिकायत करता रहता है कि libiconv में लिंक नहीं है। कम से कम मुझे लगता है कि यह शिकायत कर रहा है। यह वही है इसे बाहर थूक है:libiconv आईओएस प्रोजेक्ट से लिंक नहीं कर रहा है

Undefined symbols for architecture i386: 
    "_iconv", referenced from: 
     _mail_iconv in libmailcore.a(charconv.o) 
    "_iconv_open", referenced from: 
     _charconv in libmailcore.a(charconv.o) 
     _charconv_buffer in libmailcore.a(charconv.o) 
    "_iconv_close", referenced from: 
     _charconv in libmailcore.a(charconv.o) 
     _charconv_buffer in libmailcore.a(charconv.o) 
ld: symbol(s) not found for architecture i386 
collect2: ld returned 1 exit status 

(इस सिम्युलेटर के लिए s/i386/armv7/ बनाने जा रहा है अपने iPhone के लिए बिल्डिंग एक ही त्रुटि देता है, लेकिन।)।

मैंने libiconv.dylib को "पुस्तकालयों के साथ लिंक बाइनरी" जोड़ने की कोशिश की है, लेकिन यह त्रुटियों को बिल्कुल नहीं बदलता है।

कोई विचार क्या गलत हो सकता है? मैं इस त्रुटि को Google की कोशिश कर रहा हूं, लेकिन मुझे libiconv में लिंक करने के तरीके के बारे में कोई जानकारी नहीं मिल रही है। चूंकि यह आईओएस एसडीके का हिस्सा है, तो आपको लगता है कि मुझे इसे संकलित करने की आवश्यकता नहीं है?

+1

libiconv.dylib ने – naz

उत्तर

16

अतिरिक्त पुष्टि के रूप में कि आपके लक्ष्य में lib शामिल है, एक्सकोड के बाएं फलक में फ़ाइल सूची में lib का चयन करें (माना जाता है कि आपने इसे अपने लक्ष्य/प्रोजेक्ट में जोड़ा है, आपको ढांचे के नीचे सूचीबद्ध ढांचे को देखना चाहिए), और दाएं फलक पर सहायक संपादक दृश्य दिखाएं (देखें -> सहायक संपादक -> सहायक संपादक दिखाएं)।

फिर, बायीं तरफ चयनित प्रासंगिक lib के साथ, आपको दाईं ओर स्थित चेकबॉक्स की सूची के रूप में दिखाए गए उस lib के लिए 'लक्ष्य सदस्यता' दिखाई देगी।

आपको ऐप लक्ष्य सूचीबद्ध होना चाहिए, और उस लक्ष्य के लिए चेकबॉक्स की जांच की जानी चाहिए।

आप इसे अपने प्रोजेक्ट में घुमाने के लिए अनचेकिंग और रीकैकिंग करने का प्रयास कर सकते हैं?

+0

धन्यवाद, यह किया! यह फाइल इंस्पेक्टर में था (एक्सकोड-सीएमडी -1 एक्सकोड 4 में, या व्यू> यूटिलिटीज> फाइल इंस्पेक्टर दिखाएं)। – henrikhodne

+0

सुनना अच्छा है। हमें बताने और उत्तर स्वीकार करने के लिए धन्यवाद। – Snips

+0

मैंने libjumio लाइब्रेरी के लिए एक ही चीज़ की कोशिश की है, लेकिन कोई उपयोग नहीं है। क्या आप कृपया मेरी मदद कर सकते हैं कि इसके लिए इस मुद्दे को कैसे हल किया जाए। – Ganesh

60

आपको "जोड़ें फ्रेमवर्क" के माध्यम से libiconv.dylib जोड़ने की आवश्यकता है। एसआरसी available from this discussion.

+1

यह मेरी समस्या हल हो गया धन्यवाद – muldercnc

+1

सरल और स्मार्ट समाधान .. –

+4

एक्सकोड 7 के रूप में, यह lib अब "libiconv.tbd" है। – sherb