原文:
http://www.shnenglu.com/flyinghare/archive/2010/09/07/126078.aspx許多新人對于編譯BOOST感到無從下手,甚至因此而放棄使用BOOST,那真的太可惜了,下面我把一些常用的BOOST編譯方法貼于此,同時也作為自己的筆記。
首先下載bjam.exe,復制到 $BOOST$ 目錄下?;蛘?span style="FONT-SIZE: 14pt">
自己生成bjam,打開Visual Studio 2008 命令提示窗口$BOOST$\tools\jam\src,執行 build.bat 會在$BOOST$\tools\jam\src\bin.ntx86 生成 bjam.exe 文件。復制文件 bjam.exe 文件到 $BOOST$\下。
1.完全編譯安裝:
bjam --toolset=msvc install
完成后會生成一個bin.v2編譯時的臨時目錄,手動刪除。生成另一個目錄C:\boost,里面為所有的頭文件和庫文件。頭文件目錄為boost_1_34_1\boost目錄復制過去的。
2.只編譯相應的庫文件
bjam --toolset=msvc stage
完成后同樣會生成bin.v2臨時目錄。另一個目錄為stage文件,里面有對應的庫文件。
3.查看需要編譯才能使用的庫列表
bjam --show-libraries
4.編譯特定的庫,如只編譯regex
bjam --toolset=msvc --with-regex stage
生成的庫文件在stage目錄中。
5.不編譯某個庫,如不編譯regex
bjam --toolset=msvc --without-regex stage
生成的庫文件在stage目錄中。
6.編譯特定的庫,如只編譯regex,生成debug,多線程,共享連接版本,并保存在stage。
bjam --toolset=msvc --with-regex stage debug threading=multi link=shared
7.生成 mt-sgd 的靜態庫(runtime-link-static)
bjam "-sTOOLS=vc-8_0" --with-thread install debug release runtime-link=static
8.編譯regex庫。
bjam --toolset=msvc --with-regex stage debug release threading=multi threading=single link=shared link=static runtime-link=shared runtime-link=static
boost的安裝方法:
對于DLL版本
bjam --toolset=msvc link=shared runtime-link=shared threading=multi stage debug release install
對于lib版本
bjam --toolset=msvc link=static runtime-link=shared threading=multi stage debug release install
另外,在$BOOST$\tools\build\v2\user-config.jam找到下面的地文
# -------------------
# MSVC configuration.
# -------------------
# Configure msvc (default version, searched for in standard locations and PATH).
# using msvc ;
# Configure specific msvc version (searched for in standard locations and PATH).
# using msvc : 8.0 ;
#在這里添加 vs2008 的配置
using msvc : 9.0 : : /wd4819 /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /D_SECURE_SCL=0 ;
#在這里添加 vs2005 的配置
using msvc : 8.0 : : <compileflags>/wd4819 <compileflags>/D_CRT_SECURE_NO_DEPRECATE <compileflags>/D_SCL_SECURE_NO_DEPRECATE <compileflags>/D_SECURE_SCL=0 ;
然后進入 $BOOST$ 目錄,執行bjam.exe 編譯命令
//下面的命令的各選項的說明:
//prefix 將boost安裝到的路徑(生成的頭文件和庫文件都會放到該路徑中)。
//重定義以下變量(利用-s設置):
//VC80_ROOT vc2005的安裝路徑,如果未將vc2005安裝到默認位置,你必須指定該項。
//TOOLS 使用的編譯工具,vc2005對應的是vc-8_0
//PYTHON_ROOT ython的安裝目錄,如果未將BOOST安裝到默認位置,你必須指定該項。
//BUILD 編譯結果選項,默認會生成盡可能多的版本,如調試版/發行版,靜態庫/動態庫,單線程/多線程。
posted on 2011-02-16 11:35
zhaoyg 閱讀(1841)
評論(0) 編輯 收藏 引用 所屬分類:
C/C++學習筆記