relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
问题出现原因是编译库的时候:
g++ -c -fPIC c1.cpp
g++ -shared -fPIC -o libc1.so c1.o
编译生成.o和生成lib**.so 所用的参数不一致,上一句加上-fPIC后就不存在这个问题了。即:
g++ -c -fPIC c1.cpp