執行bootstrap.bat,如圖綠框所示:html
查看幫助能夠輸入:.\b2 --helpbootstrap
好比要開啓多線程編譯:b2 install threading=multi多線程
設置生成的是debug或者releaseide
備註:若是是使用VS2013,請指定輸出庫類型,不然會缺一個lib文件:工具
"沒法打開文件 libboost_thread_vc120_mt_sgd-1_55.lib"。測試
在2013時,我是使用下面的語句進行編譯:.net
// 若是要獲取動態庫:命令行
bjam install stage --toolset=msvc-12.0 --stagedir="C:\Boost\boost_vc_120" link=shared runtime-link=shared threading=multi debug release 線程
// 若是是要獲取靜態庫:debug
bjam install stage --toolset=msvc-12.0 --stagedir="C:\Boost\boost_vc_120" link=static runtime-link=static threading=multi debug release
其中,注意修改--toolset=msvc-12.0,將12.0修改爲對應的vs版本號,12.0是VS2013的版本號。
目標地址也要修改爲你所需的。
注意,不要漏了install,它會幫你把頭文件集合到一個文件夾中。
編譯過程有一個複製過程,編譯須要的時間比較長,本次編譯過程當中,會在C盤根目錄下生成一個boost文件夾,而後包含include和lib文件夾,這就是咱們將要使用的頭文件和庫文件。
下圖三個文件分別是: 1) 將要使用的boost頭文件和庫文件。 2) 解壓出的boost文件夾,就是使用這個文件夾來進行 1 -- 3步驟的。 3)BoostTest 測試工程。
須要簡單的配置兩個地方:
這裏使用絕對路徑,也能夠配置環境來使用。
添加boost庫
Boost是一個和STL相似的標準庫,但它擴充了STL使得泛型的優勢發揮到最佳,所以如今Boost比STL更爲實用。
Step1:下載Boost庫,這裏我選擇下載boost_1_55_0.zip
Step2:
解壓boost文件到本地目錄(如G:\boost_1_55_0),發現解壓後的文件中有一個bootstrap.bat文件。而後以管理員身份打開cmd窗口,具體命令bootstrap.bat或者使用對應的VS工具,好比VS2012 x64 Native Tools Command Prompt工具打開cmd窗口,具體命令bootstrap.bat
,上述命令執行完畢後能夠發現G:\boost_1_55_0下新生成了一個bjam.exe文件
Step3:
對於額外的一些依賴,好比boost.nowide 官網:http://cppcms.com/files/nowide/html/index.html
下載對應的Standard Version: boost_nowide.zip 包後,再合併到標準的boost文件中
Step4:
若是須要編譯zlib,則須要先去http://www.zlib.net/下載對應的源碼包,解壓到某一路徑
好比boost/otherLib/而後
命令行下設置環境變量 set ZLIB_SOURCE="D:\dyq\P\boost_1_59_0\otherLib\zlib-1.2.3"
Step5:
運行bjam.exe
Step6:
編譯32位靜態庫:
b2 link=static runtime-link=static threading=multi debug release
編譯64位靜態mt庫:
b2 stage --toolset=msvc-12.0 architecture=x86 address-model=64 --stagedir=".\stage\vc12_x64" link=static runtime-link=static threading=multi debug release
b2 stage --toolset=msvc-12.0 architecture=x86 address-model=64 --stagedir=".\stage\vc12_x64" link=static runtime-link=shared threading=multi debug release
編譯64位靜態md庫:
b2 stage --toolset=msvc-12.0 architecture=x86 address-model=64 --stagedir=".\stage\vc12_x64" link=static runtime-link=shared threading=multi debug release
Step7:
添加boostest工程的包含目錄和庫目錄
包含目錄添加 G:\boost_1_55_0
庫目錄添加 G:\boost_1_55_0\stage\lib
注意:程序的運行時(多線程/多線程DLL)要與庫保持一致,不然連接會報找不到文件的錯誤