Boost使用杂记
常见问题
无法打开文件“libboost_filesystem-vc140-mt-sgd-1_64.lib”。参考
- 重新编译Boost
b2 stage architecture=x86 address-model=64 link=static runtime-link=static threading=multi debug release
- 选项说明
link=static/shared,静态或者动态编译boost
runtime-link=static/shared,boost是否需要依赖vc运行库,如果你要自带vc运行库可用shared
threading=multi/single,是否支持多线程
在一个vs版本的的情况下可以直接b2 --toolset=msvc,多个的话需要指定vs版本号b2 --toolset=msvc-12.0
- 生成的文件名:libboost_log-vc120-mt-sgd-1_59.lib,其中mt表示多线程,sgd中的s表示runtime 是static,gd表示debug版本。
编译boost.python(参考)
-
运行bootstrap.bat生成b2和bjam
-
编辑project-config.jam (注意倒数第二行的那个分好一定要写上)
import option ;
using msvc ;
using python
: 3.5
: "C:\Program Files\Anaconda3"
: "C:\Program Files\Anaconda3\include"
: "C:\Program Files\Anaconda3\libs"
;
option.set keep-going : false ; -
生成
* debug版- bjam --with-python --prefix=d:\boost stage toolset=msvc-10.0 variant=debug link=shared address-model=64 threading=multi runtime-link=shared install
* release
* bjam --with-python --prefix=d:\boost stage toolset=msvc-10.0 variant=release link=shared address-model=64 threading=multi runtime-link=shared install
- 按照官方的方法生成dll并将对应文件后缀改为pyd