我在编译我的程序时出现问题是我使用的gcc选项
g++ -shared -fPIC -fvisibility -L/usr/lib/x86_64-linux-gnu/ -lboost_serialization-mt -lboost_thread-mt -lboost_date_time-mt -lboost_iostreams-mt -lboost_program_options-mt -lboost_filesystem-mt -lboost_system-mt
输出
relocation R_X86_64_32S against `vtable for boost::detail::sp_counted_base' can not be used when making a shared object; recompile with -fPIC
could not read symbols: Bad value
有谁知道为什么会这样?感谢
答案 0 :(得分:0)
使用apt-get install libboost
如果您在安装libboost时遇到任何问题,请参阅this link以澄清它们。 执行此操作后,您可以使用-fPIC标志重新编译boost以解决此问题。我认为警告本身有助于确定您的问题。