標籤:pac 檔案中 靜態 源碼 檔案名稱 void end 檔案 rap
下載&解壓
從 http://www.boost.org/ 上下載源碼並解壓
開啟 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 <iostream>#include <boost/python.hpp>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
windows(msvc)下編譯boost庫