一、问题
在linux使用以下命令编译共享库时报错
g++ -std=c++11 -shared -fPIC testlib.cc -o testlib.so -I. -llua -ldl -lm
relocation R_X86_64_PC32 against symbol `lua_newstate’ can not be used when making a shared object; recompile with -fPIC
问题原因:链接lua库使用了-fPIC
二、解决
重新使用以下命令编译lua库
make CFLAGS=-fPIC linux
sudo make install