I get a linker issue with the Intel Compiler version beta 13 but only while compiling in the Mac OS X platform (in Linux works fine). Basically I have my project that uses and links to PAPI (performance counters library) and PAPI is built using a recent version of GNU compiler (I have exact same setup in Linux).
The linker error is the following and it shows that can't find the GNU's compiler thread local support I think.
Linking CXX executable benchmark Undefined symbols for architecture x86_64: "___emutls_get_address", referenced from: _PAPI_register_thread in libpapi.a(papi.o) _PAPI_unregister_thread in libpapi.a(papi.o) _PAPI_get_thr_specific in libpapi.a(papi.o) _PAPI_set_thr_specific in libpapi.a(papi.o) _PAPI_create_eventset in libpapi.a(papi.o) _PAPI_set_opt in libpapi.a(papi.o) _PAPI_shutdown in libpapi.a(papi.o) ... ld: symbol(s) not found for architecture x86_64 make: *** [benchmark] Error 1 make: *** [CMakeFiles/benchmark.dir/all] Error 2 make: *** [all] Error 2
This I can fix by changing the Intel compiler linker options to link to the gcc library gcc_eh that contains the symbol (see below):