RealPath:
WebPath:
2017/02/12 02:24 (JST) 更新
Boost >>

Windowsに導入(msvc)

Contents

パッケージ入手

以下からZIPを入手。

パッケージ設置

入手したZIPを解凍して C:\boost 等に設置。

ビルド

一部機能 (Regex 等) を利用するためにはビルドが必要。

dos
> cd c:\boost
> bootstrap.bat
Building Boost.Build engine

Bootstrapping is done. To build, run:

    .\b2

To adjust configuration, edit 'project-config.jam'.
Further information:

    - Command line help:
    .\b2 --help

    - Getting started guide:
    http://boost.org/more/getting_started/windows.html

    - Boost.Build documentation:
    http://www.boost.org/build/doc/html/index.html

> b2 --toolset=msvc-14.0 link=static,shared threading=multi release debug stage
これでぜんぶできるっぽい

旧版ビルド (1.39.0あたり)

昔の boost では bootstrap.bat を実行したときに b2 ではなく bjam ができる形式になっていた。

b2 と bjam の引数は共通のものが多いっぽいので当時のメモを残しておく。

dos
> cd C:\boost
> bootstrap.bat
> bjam --toolset=msvc link=static,shared release debug stage

bjamその他の引数指定例

dos
> bjam --toolset=msvc-10.0 --build-type=complete
> bjam --toolset=msvc-10.0 link=static,shared release debug stage
> bjam --toolset=msvc-8.0 link=static,shared release debug stage
> bjam --toolset=msvc-12.0 link=static,shared threading=multi release debug stage

(VS2015)
> bjam --toolset=msvc-14.0 link=static,shared threading=multi release debug stage

(Visual C++ 2003用) (2003 = 7.1, 2005 = 8.0, 2008 = 9.0, 2010 = 10.0, 2012 = 11.0, 2013 = 12.0, 2015 = 14.0)
> bjam --toolset=msvc-7.1 link=static,shared release debug stage

> bjam --toolset=msvc stage
  • static … staticリンク
  • shared … 共有リンク

旧版ビルド (1.35.0あたり)

スタートメニューから辿れる [Visual Studio 2005 コマンド プロンプト] にて。

prompt
> cd D:\boost_1_35_0\libs\regex\build
> nmake -f vc8.mak              (lib作成)
> nmake -f vc8.mak install      (VCディレクトリにlibをコピー)

単機能ビルド

threadビルド

dos
> cd C:\boost_1_46_1\libs\thread\build
> bjam link=static,shared debug release
C:\boost_1_46_1\bin.v2\libs\thread\build\msvc-10.0\debug\link-static\threading-multi
dos
> cd C:\boost_1_46_1\libs\date_time\build
> bjam link=static,shared threading=multi debug release
C:\boost_1_46_1\bin.v2\libs\date_time\build\msvc-10.0\debug\threading-multi

Visual Studio 2003 のビルドで「LNK1169」が出る場合

コード生成を「マルチスレッド デバッグ DLL」から「マルチスレッド デバッグ」に変更することで解決。

参考