4 Replies Latest reply on May 24, 2009 2:05 PM by rahulgarg

    OpenMP on 64-bit linux and fPIC

    rahulgarg

      I am on 64-bit Ubuntu Linux 8.10 and using the binaries downloaded from the AMD website (x86_open64-4.2.2-1.x86_64.tar.bz2). The default linker (/usr/bin/ld) on my system is from GCC v4.3.2.

      I am trying to compile a shared library which contains OpenMP declarations.

      opencc -fopenmp myfile.c -shared -o myfile.so -lexternal_library -fPIC

      I get the following error:

      /usr/bin/ld: /home/rahul/open64/x86_open64-4.2.2//lib/gcc-lib/x86_64-open64-linux/4.2.2/libopenmp.a(omp_runtime.o): relocation R_X86_64_32S against `a local symbol' can not be used when making a shared object; recompile with -fPIC

      Any hints/ideas/solutions?