<html><body><p>Hi all<br><br>I am trying to test extensively libomp on ppc platforms. When compiling on ppc64le (a P8 node) using gcc 4.8.2 both application and runtime library, I get the following:<br><br>testiompppc64.o: In function `main':<br>testiompppc64.cpp:(.text+0x154): undefined reference to `GOMP_parallel_start'<br>testiompppc64.cpp:(.text+0x168): undefined reference to `GOMP_parallel_end'<br>testiompppc64.o: In function `main._omp_fn.0':<br>testiompppc64.cpp:(.text+0x334): undefined reference to `omp_get_thread_num'<br>testiompppc64.cpp:(.text+0x354): undefined reference to `omp_get_num_threads'<br>testiompppc64.cpp:(.text+0x364): undefined reference to `omp_get_thread_num'<br><br>Inspection of libomp.so shows the following when grepping against omp_get_num_threads symbol:<br><br>000000000005bd40 t __kmp_api_omp_get_num_threads<br>000000000005d8a0 t __kmp_api_omp_get_num_threads_<br>000000000005d8a0 t __kmp_api_omp_get_num_threads__10_alias<br>000000000005bd40 t __kmp_api_omp_get_num_threads_10_alias<br>000000000005d8a0 T omp_get_num_threads_@OMP_1.0<br>000000000005bd40 T omp_get_num_threads@OMP_1.0<br>000000000005d8a0 T omp_get_num_threads_@@VERSION<br>000000000005bd40 T omp_get_num_threads@@VERSION<br><br><br>This seems to be happening only when using gcc to build the application. If I use clang to build the application, then everything is fine even when building the library with either clang or gcc.<br>In these successful cases, when checking the symbols used I obtain:<br><br>1. The executable:<br><br>U omp_get_thread_num@@VERSION<br><br>2. The library (in this case I used gcc to build it):<br><br>000000000005cde0 T omp_get_thread_num_@@VERSION<br>000000000005b610 T omp_get_thread_num@@VERSION<br><br><br>It may be that my gcc installation is not appropriate for the platform and what I am trying to do, but is anyone aware of what kind of problem this could be and point me in the direction of a solution?<br><br><br>Thanks!<br><br>-- Carlo<BR>
</body></html>