32位編譯:
從開始選單啟動visual studio 2013的vs2013 命令列,進入boost所在目錄,執行bootstrap.bat
編譯命令(例):
bjam.exe stage --toolset=msvc-12.0 --without-math --stagedir="vc12_x86" link=static runtime-link=shared threading=multi debug release
toolset:指定編譯器,可選的如borland、gcc、msvc(vc6)、msvc-10.0(vs2010)(vs2008 : msvc-9.0,vs2010 : msvc-10.0, vs2012、vs2013是msvc-12.0)
stagedir:表示編譯生成檔案的路徑。build-dir:編譯生成的中間檔案的路徑。這個本人這裡沒用到,預設就在根目錄(d:\boost\boost_1_57_0)下,目錄名為bin.v2(刪掉),等編譯完成後可將這個目錄全部刪除(沒用了),所以不需要去設定。
without/with:選擇不編譯/編譯哪些庫。
address-model:要有address-model=64屬性,如果沒有這個屬性的話,會預設生成32位的平台庫,加入這個選項才能生成64位的dll。
threading:單/多執行緒編譯。一般都寫多執行緒程式,當然要指定multi方式了;如果需要編寫單執行緒程式,那麼還需要編譯單執行緒庫,可以使用single方式。
link:靜態庫版link=shared,動態庫link=shared
runtime-link:動態/靜態鏈結c/c++執行時庫。同樣有shared和static兩種方式,這樣runtime-link和link一共可以產生4種組合方式,各人可以根據自己的需要選擇編譯。一般link只選static的話,只需要編譯2種組合即可,即link=static runtime-link=shared和link=static runtime-link=static。
debug/release:編譯debug/release版本。一般都是程式的debug版本對應庫的debug版本,所以兩個都編譯。
64位編譯:
從開始選單啟動visual studio 2013的vs2013 x64相容工具命令列,然後轉到boost根資料夾,執行bootstrap.bat生成x64版的bjam.exe。
在編譯命令中加入address-model=64屬性
link=static runtime-link=static 得到 libboost***xx.lib
link=shared runtime-link=shared 得到 boost***x.lib 和 boost***x.dll
由以上的資料夾層次結構基本就可以得出結論:
1、以「lib」開頭的是「link-static」版本的,而直接以「boost」開頭的是「link-shared」版本的。
2、有「d」的為debug版本,沒有的則是release版本。
3、有「s」的為「runtime-link-static」版本,沒有的則是「runtime-link-shared」版本。
4、有「mt」的為「threading-multi」版本,沒有的則是「threading-single」版本。
本文參考:vs2013 boost庫編譯小結
boost庫交叉編譯
1.環境 linux系統 ubuntu 14.04 編譯工具 arm fsl linux gnueabi gcc 3.編譯 1 解壓,cd 到目錄 show libraries可檢視所有庫,如下 使用 without libraries 逗號隔開去掉不想編譯的庫,prefix 指定編譯後的安裝路徑 ...
交叉編譯boost庫
1.確保arm編譯成功安裝,並配置好環境變數。2.解壓boost壓縮包 3.進入目錄執行.bootstrap.sh,此時形成bjam檔案和project config.jam using gcc arm linux gnueabihf gcc 注意是雙冒號 5.執行.bjam stage,ok大功告...
boost 編譯 thread asio 等庫
2.將bjam.exe放在c boost 1 46 1目錄下 3.編譯thread庫 bjam.exe stage with thread toolset msvc runtime link static 編譯asio庫 bjam.exe stage with system toolset msvc...