下载&解压
从 上下载源码并解压
打开 vs 的本机工具命令提示符
- cd boost_sourcecode_dir
- bootstrap
- 如果需要编译 boost.python 需要在 boost_sourcecode_dir\tools\build\example\user-config.jam 中添加如下内容:
using msvc : 14.0 ;using python : 2.7 : F:\\ProgramData\\Anaconda2 : F:\\ProgramData\\Anaconda2\\include : F:\\ProgramData\\Anaconda2\\libs
- 使用 b2 命令进行编译,具体的命令行参数可以在 boost_sourcecode_dir\Jamroot 文件中查看,如果要编译 x64 ,记得 加上 address-model=64, 否则默认同时编译32位和64位
在vs工程中引入动态库/静态库
- 如果要使用 Boost.Python ,记得引入 python 的 include 和 libs
- 使用动态链接库,需要 #define BOOST_ALL_DYN_LINK
Boost.Python 版 helloworld
#define BOOST_ALL_DYN_LINK#include#include void hello(){ std::cout << "hello, world" << std::endl;}BOOST_PYTHON_MODULE(helloworld){ using namespace boost::python; def("hello", &hello);}
- 需要注意的是,BOOST_PYTHON_MODULE(helloworld)必须与输出的pyd文件名一致,在工程属性中把目标文件扩展名改为.pyd,配置类型选择dll
- 生成的 .pyd 文件可以直接在python中import