Boost1.6x+win7+VC2015編譯


下載


通過boost官方網站, 或直接在source forge下載boost_1_6x_0. 

可選包


Zlib library, 環境變量: ZLIB_SOURCE

bzip2, 環境變量: BZIP2_SOURCE

ICU i18n, 環境變量HAVE_ICU=1, ICU_PATH

expat, 環境變量: EXPAT_INCLUDE (頭文件包含目錄) 和 EXPAT_LIBPATH (庫目錄)

在Windows上編譯Boost


下載完Boost源文件壓縮包后, 創建boost-src目錄, 並把源文件解壓到此目錄. 假設你想把Boost安裝到boost-dir目錄, boost-build目錄是中間臨時文件. 在命令行執行下面的步驟:

編譯器的選擇(x86_amd64, amd64等的區別)(注:2)

  • 32/64 位系統編譯在32位系統上運行 => x86
  • 32 系統上編譯64位系統上運行 => x86_amd64
  • 64 系統上編譯在64位系統上運行 => amd64

1.初始化VC編譯環境:

  • 32位系統上, 初始化32位VC編譯環境:

    "C:\Program Files\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86

  • 32位系統上, 要生成64位的boost庫, 初始化64位VC++編譯環境:

     "C:\Program Files\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64

  • 64位操作系統上, 安裝的32位Visual Studio, Visual Studio 一般安裝在 C:\Program Files (x86):

    "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86

  • 64位操作系統上, 安裝的32位Visual Studio, 生成64位庫:

    "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64

2. 生成Boost編譯系統:

  cd /d drive:\path\to\boost-src
  bootstrap.bat

3. 解壓bzip2和zlib源壓縮包, 備注解壓的目錄.

4. 編譯和安裝:

  • 32位庫

  b2 install --libdir=boost-dir\libs --includedir= boost-dir\include --build-dir=boost-build --layout=tagged variant=debug,release threading=multi link=shared runtime-link=shared -sZLIB_SOURCE=<zlib-src-dir> -sBZIP2_SOURCE=<bzip2-src-dir>

  •  64位庫

  b2 install --libdir=boost-dir\libs64 --includedir= boostdir\include --build-dir=boost-build64 --layout=tagged variant=debug,release threading=multi link=shared runtime-link=shared address-model=64 –sZLIB_SOURCE=<zlib-src-dir> -sBZIP2_SOURCE=<bzip2-src-dir>

我的實例:


"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64
cd /d F:\Develop\Libs\boost_1_6x_0
bootstrap.bat

1. 編譯和安裝32位庫:
b2 install --libdir=G:\yy\build\libs --includedir=G:\yy\build\include --build-dir=boost-build --layout=tagged variant=debug,release threading=multi link=shared runtime-link=shared

2. 編譯和安裝64位庫:
b2 install --libdir=G:\yy\build\libs64 --includedir=G:\yy\build\include --build-dir=boost-build64--layout=tagged variant=debug,release threading=multi link=shared runtime-link=shared address-model=64 architecture=x86

3. 編譯和安裝64位庫(方式2):

b2 install --prefix=F:\Develop\bin\x64\boost-1_62 --build-dir=boost-build64 --layout=tagged variant=debug,release threading=multi link=shared runtime-link=shared address-model=64 architecture=x86 --with-thread --with-graph --with-date_time

4. 編譯和安裝64位庫(2017-3-2 1.63):

  b2 install --prefix=F:\Develop\bin\x64\boost-1_63 --build-dir=F:\Develop\build\VC14\boost-1_63-build64 address-model=64 architecture=x86 --with-thread
 默認值:
  --build-type=minimal   在Windows上, 生成基於共享運行庫的debug和release靜態多線程庫
  --layout=versioned    在Windows上默認,Boost二進制文件名稱包括Boost版本號、編譯器名稱和版本和編碼生成屬性。
                  Boost頭文件安裝在<HDRDIR>子目錄 <HDRDIR>的名字包含Boost版本號。

5. 編譯和安裝64位庫(boost.python)(2017-3-18 1.63):

 b2 install --prefix=D:\Develop\bin\vc14\x64\boost-1_63 --build-dir=D:\Develop\build\vc14\boost-1_63-build64 address-model=64 architecture=x86 toolset=msvc-14.0 --with-python link=shared

 

Boost的自動鏈接功能:

 


Boost默認啟用自動鏈接功能, 建議采用關閉自動鏈接功能。
  在附加預定義宏 加 BOOST_ALL_NO_LIB ,這樣就關閉了BOOST的自動鏈接LIB的功能。然后把需要的lib庫在附加庫里手動加入。

修訂:

1. 2016-11-09: 64位編譯需要加入CPU架構參數: architecture=x86
2. 2016-11-23: 編譯器的選擇(x86_amd64, amd64等的區別), 內容進行了整理, boost更新到1.62.0
3. 2017-03-02: 使用默認參數編譯, boost更新到1.63.0
4. 2017-04-15: 建議關閉boost自動鏈接功能


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM