boost
的編譯使用的不是已經成為公認標準的
make
,而是專門為
boost
開發的工具
bjam(boost jam)。
本文以boost1.40
為例,在
linux
平台的程式設計環境為
gcc4.4.1
,假設boost
**在/usr/src/
boost_1_40_0
目錄,步驟如下。
1. 獲得bjam 獲得
bjam有3
種方式,如下:
方法1:boost
**上提供了各種平台上預編譯好的
bjam 方法
2:從boost
源**中提供的
bjam
**編譯出可執行程式。 方法
3:通過
bootstrap
程式生成
bjam。
方法1:
# apt-get install bjam方法2
: (1) # cd /usr/src/boost_1_40_0/tools/jam/src
(2) # ./build.sh
編譯完成後:
生成的可執行檔案為 #
/usr/src/
boost_1_40_0
/tools
/jam
/src
/bin.linuxx86
/bjam
需要將bjam.exe
拷貝到源**所在的目錄
# cp
bin.linuxx86
/bjam/usr/src/boost_1_40_0 方法
3:(1) # cd /usr/src/boost_1_40_0
(2) # ./
bootstrap.sh
該方法直接在
boost
源**目錄下生成
bjam
檔案。
2.修改
bjam配置
使用bjam
前,需要修改
bjam
的配置檔案。
linux
平台的配置檔案:
/usr/src/boost_1_40_0/tools/
build/v2
/user-config.jam
修改如下。注:筆者在實驗時,不修改貌似也很正常。將43
行的「# using
gcc;
」前的注釋符號『
#』去掉,表明用到使用
gcc編譯。
如果要使用
stlport
作為其標準庫,將
75行前的『
#』去掉。
3. 完整編譯
boost 對
boost
進行完整編譯,生成所有除錯版、發行版的靜態庫和動態庫。 方法
1:# cd /usr/src
# wget
# tar --bzip2 -xvf boost_1_40_0.tar.bz2
# cd boost_1_40_0# b
jam --toolset=gcc --build-type=complete stage 或
# ./bjam --build-type=complete --layout=versioned
或# ./
bjam 方法
2:# cd /usr/src/boost_1_40_0/tools/jam
# ./
build_dist.sh
也會完成
linux
平台bjam
和boost
的所有編譯工作,並生成所有除錯版、發行版的靜態庫和動態庫。
但不推薦該方式。
編譯成功後,將在
/usr/src/boost_1_40_0/bin.v2
目錄下生成諸多檔案,包括.a和
.so.1.40.0
檔案,這就是
在linux
平台要使用
boost
需要的,其他的檔案可以刪除。 安裝
# ./bjam install
將生成的庫預設安裝到
/urs/local/lib
目錄。
4 部分編譯
boost
完整編譯
boost
費時費力,且這些庫在開發過程中並不一定全部用到,因此,
bjam
也支援使用者自行選擇要編譯的庫。
在完全編譯的基礎上,使用
--with
或者—without
選擇可以開啟或者關閉某個庫的編譯,例如,僅僅編譯
date_time庫:
# cd /usr/src/
boost_1_40_0
# ./b
jam --toolset=msvc
--with-date_time --build-type=complete stage
當然,bjam
還有很多其他選項,如指定安裝路徑,指定
debug
或release
等,可參考
bjam
文件或幫助
。
Linux平台Boost的編譯方法
boost的編譯使用的不是已經成為公認標準的make,而是專門為boost開發的工具bjam boost jam 本文以boost1.40為例,在linux平台的程式設計環境為gcc4.4.1,假設boost 在 usr src boost 1 40 0目錄,步驟如下。獲得bjam有3種方式,如下 ...
Linux平台Boost的編譯方法
本部落格 linux 平台boost 的編譯方法 boost 的編譯使用的不是已經成為公認標準的 make 而是專門為 boost 開發的工具 bjam boost jam 本文以boost1.40 為例,在 linux 平台的程式設計環境為 gcc4.4.1 假設boost 在 usr src b...
boost 編譯,windows平台
2編譯及安裝boost庫 進入dos環境,利用cd命令進入一中解壓的boost檔案根目錄,輸入bjam toolset gcc prefix c boost install進行編譯,此命令會把編譯後的boost檔案安裝到c boost下 注意 命令列中前後不可以有空格,資料夾名字隨便取,但是乙個資料...