2012-10-23 16 views
25

में अपरिभाषित समाप्त करें मेरे पास एक कोको ऐप है जो ठीक से संकलित और लिंक करता है। मैंने तब से कुछ कोड को स्थिर पुस्तकालय में तोड़ दिया है और फिर वापस चला गया है और libmyLib.a लाइब्रेरी को मेरे मूल कार्यक्रम में जोड़ने का प्रयास किया है।std :: कोको ऐप

अब मैं एक लिंकर त्रुटि

Undefined symbols for architecture x86_64: 
    "std::terminate()", referenced from: 

स्रोत मॉड्यूल है कि मेरी मुख्य परियोजना में रहते हैं करने के लिए उपयोग में से एक को संदर्भित मिलता है, लेकिन अब पुस्तकालय में रहती है।

मैंने वापस जाने और प्रत्येक कंपाइलर और लिंकर सेटिंग को मिलान करने की कोशिश की है ताकि यह देखने के लिए कि कौन सा अलग है, लेकिन मैं इसे कम करने के लिए प्रतीत नहीं कर सकता। मेरा झटका यह है कि मैं एक सीटीडी के साथ जुड़ रहा हूं और सी ++ एसटीडी की आवश्यकता है, लेकिन सबकुछ मानक libs के साथ सी 99 कंपाइलर का उपयोग कर रहा है।

कोई विचार?

धन्यवाद!

+7

libc में जोड़ने ++ तय की। Dylib मुद्दा – WebDrive

+2

WebDrive, और @Scicare तय, कृपया एक जवाब और पुरस्कार अंक और इनाम क्रमशः जोड़ें। –

उत्तर

41

libc में जोड़ने ++। Dylib मुद्दा

+0

आप इसे कैसे लिंक करते हैं? :) –

+2

बिल्ड विकल्प के लिंकर सेक्शन में पुस्तकालयों की सूची में libC++। Dylib जोड़ें – WebDrive

+3

'-lC++' जोड़ना भी – onlynone