1.资源
系统:centos 7
boost源码:使用的是1.54版本的 boost_1_54_0.tar.gz,具体自己去boost官网下载
2.解压boost
tar -zxvf boost_1_54_0.tar.gz
注意:由于boost 默认编译的静态库是没有-fPIC选项,编译参数也没有可选的项来添加-fPIC
如果按默认提供的参数选项编译,那么在编写动态库调用boost中的静态库时会报错,
如:libboost_serialization.a(basic_iarchive.o): relocation R_X86_64_32S against `_ZTVN5boost7archive6detail14basic_iarchiveE' can not be used when making a shared object; recompile with -fPIC
3. 解决动态库调用boost静态库时报错 -fPIC的方法
cd boost_1_54_0/tools/build/v2/tools
编辑gcc.jam文件
vim gcc.jam
找到内容
rule setup-fpic ( targets * : sources * : properties * )
{
local link = [ featur