के साथ ___emutls_get_address गुम है मैक ओएस 10.8.2 पर एक स्वयं संकलित जीसीसी -4.7.1 का उपयोग कर प्रोग्राम को संकलित करने का प्रयास कर रहा हूं। कार्यक्रम ओपनएमपी का उपयोग करता है और संकलन सफल होता है; तथापि, जब मैं इस कार्यक्रम को चलाने के लिए प्रयास करते हैं, गतिशील लिंकरgcc-4.7 और openMP
dyld: lazy symbol binding failed: Symbol not found: ___emutls_get_address
Referenced from: /usr/local/gcc-4.7.1/lib/libgomp.1.dylib
Expected in: /usr/lib/libSystem.B.dylib
dyld: Symbol not found: ___emutls_get_address
Referenced from: /usr/local/gcc-4.7.1/lib/libgomp.1.dylib
Expected in: /usr/lib/libSystem.B.dylib
इस मुद्दे के साथ शिकायत करता है, लगातार -fopenmp साथ संकलित किसी भी कार्यक्रम में मौजूद है मेगावाट
#include <stdio.h>
int main() {
#pragma omp parallel
printf("Hallo!\n");
return 0;
}
ध्यान दें कि समाधान का सुझाव दिया सहित What is the "___emutls_get_address" symbol? में, अर्थात् लिंकिंग चरण में -lgcc_eh
जोड़ना, काम नहीं करता है (मुझे अभी भी एक ही त्रुटि त्रुटि संदेश मिलता है)।
अजीब, मैंने हाल ही में जीसी 4.7.1 को ओएस एक्स 10.8.2 पर संकलित किया [इस गाइड] के अनुसार [http://solarianprogrammer.com/2012/07/21/compiling-gcc-4-7-1- मैक-ओएसएक्स-शेर /) और ओपनएमपी समर्थन बेकार ढंग से काम करता है। –
@HristoIliev मैं फिर से जांच करूंगा कि मैंने इसे कैसे संकलित किया और पुनः संयोजित करने का प्रयास किया। उम्मीद है कि यह मुद्दा गायब हो जाएगा ... –
एक समान प्रश्न और उत्तर पोस्ट किया गया है: http://stackoverflow.com/questions/7885246/what-is-the-emutls-get-address-symbol – FabienRohrer