macports / dylib libc के साथ विफलता ++ abi.dylib: एक अपवाद फेंकने को कहा जाता है समाप्त करें जाल: 6


0

मैंने MacOS 10.8.4 पर Macports vowpal_wabbit v6.1 स्थापित किया है और यह इसके साथ मर जाता है:

libc++abi.dylib: terminate called throwing an exception
Abort trap: 6

मैं चारों ओर बहुत पढ़ता हूं और ऐसा लगता है कि यह libc ++ के बीच एक ज्ञात अनुकूलता मुद्दा है जो gcc vs llvm के साथ संकलित है। मैंने संकलक के मिश्रण के बारे में कैविटीज़ को पढ़ा । लक्षण के समान होने लगते हैं यह । मैं अस्पष्ट रूप से याद करता हूं कि कुछ पोर्ट जो मैंने स्थापित किए थे, के साथ संगतता कारण था, जिसने मुझे llvm के बजाय mp-gcc का उपयोग करने के लिए मजबूर किया, यह संख्यात्मक या इस तरह के कुछ गंभीर पुराने निर्भरता रहा हो सकता है।

MacPorts संस्करण 2.2.0 है। XCode संस्करण 5.0 है और मैंने पहले भी 4.6 के साथ असफल कोशिश की थी। मैंने बिना किसी सफलता के अनइंस्टॉल, क्लीन और रीइंस्टॉल किया। संस्करण:

vowpal_wabbit-6.1_0+cluster.darwin_12.x86_64
boost @1.54.0_0+no_single+no_static+python27

Macports संकलक संस्करण हैं: sudo port select --show gccरिटर्न mp-gcc45 sudo port select --show ccरिटर्न Error: The 'show' command failed: The specified group 'cc' does not exist. मैं नहीं देखता कि कौन सा संकलक डिफ़ॉल्ट रूप से उपयोग किया जाएगा? अगर मैं हर मैकपोर्ट को llvm के साथ पुनः स्थापित करता हूं तो क्या यह चीजें नहीं टूटती हैं? मेरे पास कई स्थापित पोर्ट हैं और यह वास्तव में दर्दनाक होगा, यह कहना अनावश्यक भी होगा कि अन्य चीजों को भी तोड़ना होगा।

इसके अलावा: ओटूल-एल / ​​ऑप्ट / स्थानीय / बिन / वीडब्ल्यू

/opt/local/lib/libboost_program_options-mt.dylib (compatibility version 0.0.0, current version 0.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.7)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 56.0.0)

मुझे लगता है कि आपको macports उपयोगकर्ताओं को मेलिंग सूची
मार्क

@ मार्क लेकिन यह dylib संगतता त्रुटि मेरे लिंक के अनुसार दर्जनों अन्य उपकरणों के साथ होती है। यह एक मैक dylib मुद्दा है, एक macports मुद्दा नहीं है।
smci

जैसा कि आप एक macport स्थापित कर रहे हैं यह एक macports मुद्दा है कुली किसी भी मुद्दे को हल करना चाहिए था। सामान्य मैकपोर्ट आपने चलाए हैंsudo port selfupdate
मार्क

ध्यान दें कि मैकपोर्ट डिफ़ॉल्ट रूप से ऐप्पल क्लैंग का उपयोग करता है यदि आवश्यक हो तो बस जीसीसी का उपयोग करता है।
मार्क

@निशान। यह संकलक लेकिन पुस्तकालयों गलत हो जाता है। मैं macports सूची चर्चा और portfile में खुदाई कर रहा हूँ ...
smci

जवाबों:


1

दोनों vowpal_wabbit और इसकी निर्भरता बूस्ट गलत तरीके से संकलित और सिस्टम libstdc ++ के बजाय macport के /opt/local/lib/libstdc++.6.dybib के साथ लिंक किए गए प्रतीत हो रहे हैं

समाधान लगता है:

a) मैकपोर्ट्स बूस्ट को हैक करके इंस्टॉल करें:

b) तब हमें VW to Boost install करने के लिए macports फाइल को हैक करना होगा


1
यह बूस्ट का libstdc ++ नहीं है, लेकिन macports's /opt /local/lib/libstdc++.6.dylib में
मार्क
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.