Boost 编译追加 zlib 支持

默认在windows 下编译的 Boost 没有 zlib 支持。

项目中用到了 boost iostreams 中的 zlib 过滤器,从 linux 移植到 windows 时遇到了项目编译时找不到 boost_zlib-vc100-mt-gd-1_55.lib 的问题。

原因是 windows 系统中默认没有 zlib 库,因此需要下载 zlib 的源码,并重新编译 boost 使其增加对 zlib 的支持。

以下命令完成了该任务。记录之以备忘。

.\b2 -j8 --with-iostreams -sZLIB_SOURCE="D:\C_LIBS\pack\zlib-1.2.8" -sZLIB_INCLUDE="D:\C_LIBS\pack\zlib-1.2.8"  --build-type=complete address-model=64

其中, zlib-1.2.8 是从 zlib 官网下载的源码。

--with-iostreams 表示要编译 iostreams

address-mode=64 表示编译  x64 的库。

由于设定了 -sZLIB_SOURCE 和 ZLIB_INCLUDE 两个变量,编译 iostreams 时,会生成  boost_zlib_XXXX.lib 系列库。
只要在 boost 的根目录下运行,系统只会更新 iostreams 相关的库。

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值