2010-07-26 18 views
5

क्या आपके पास कोई विचार है? क्यों XCode संकलन इस परिणाम देते हैं?समान पुस्तकालय के लिए डुप्लिकेट प्रतीक एक्सकोड डुप्लिकेट लाइब्रेरी?

ld: duplicate symbol _kJSONDeserializerErrorDomain in 
    /Users/Shared/_BUILDS_/Debug-iphoneos/libLACDLibrary.a(CJSONDeserializer.o) 
    and /Users/Shared/_BUILDS_/Debug-iphoneos/libLACDLibrary.a(CJSONDeserializer.o) 

उत्तर

1

अरे, आपके पास XCode में CJSONDeserializer से डुप्लिकेट संदर्भ है, इसलिए इसे दो बार संकलित और लिंक किया गया है।

6

मुझे बिल्कुल वही समस्या है। और यह केवल arm6 build (arm7 build नहीं) के लिए शिकायत करता है। मुझे एक वर्कअराउंड मिला: बिल्ड < के तहत अन्य लिंकर ध्वज में "-all_load" हटाएं- जानकारी <-लक्ष्य रखें। मुझे यकीन नहीं है कि यह एक सही कामकाज है या नहीं। मुझे उम्मीद है कि कोई आगे की व्याख्या कर सकता है और सही कामकाज प्रदान कर सकता है अगर यह नहीं है।

6

यह त्रुटि होती है यदि आप एक ही लाइब्रेरी को अपनी परियोजना में कई बार लिंक करते हैं।

परियोजना निर्भरता पुस्तकालयों को एक साथ जोड़ने से काफी अलग हैं। यह ठीक है कि कई परियोजनाएं एक ही साझा लाइब्रेरी प्रोजेक्ट एक्स पर निर्भर करती हैं; हालांकि, सुनिश्चित करें कि प्रोजेक्ट्स परियोजनाओं में से केवल एक वास्तव में लाइब्रेरी लिंक करता है।

+0

+ 1 लिंक और निर्भरता के बीच अंतर के लिए – lms

0

मैं की तरह एक फ़ाइल में निम्न Common.h बुलाया कोड के साथ इस मुद्दे को मारा:

void dumpViews(UIView* view, NSString *text, NSString *indent) { 
    // ... 
} 

विधि परिभाषा के सामने स्थिर जोड़ कर यह समस्या को मंजूरी दे दी है मेरे लिए:

static void dumpViews(UIView* view, NSString *text, NSString *indent) { 
    // ... 
} 
+0

ठीक है, यह एक लंबा समय है, और मुझे इसके लिए मिले कामकाज को याद नहीं है, लेकिन समस्या एक जैसी थी, या एक परियोजना स्तर पर याद नहीं है। संकेत के लिए Thx – Vaseltior

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