2017年7月6日木曜日

Boostのビルド(インテルコンパイラ+VS2015)

Boost(1.64.0)をVisual Studio 2015でビルドする方法
Boostは1.42.0以降からCmakeには非対応になったためb2でビルドする必要があります.

  1. 環境設定を行う."C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\bin\compilervars.bat  intel64 vs2015"を実行する.32ビットの場合はia32,Visual Studioのバージョンは必要なバージョンを指定する
  2. Boostのディレクトリに移動する.
  3. bootstrap.batを実行するとb2.exeという実行ファイルが生成される
  4. b2.exe --toolset=intel-17.0-vc14 --cxxflags=/Qstd=c++11 --build-type=complete architecture=x86 address-model=64 -j 8 stage.--cxxflagsでc++11対応の設定.-jオプションはビルドの並列数のしていなので,マルチコアの場合は指定しておくと高速にビルドできます.最後のstageはビルドされたライブラリが出力されるディレクトリパスです.私はBoost.Pythonは使わないので"--without-python"を追加しています.
  5. 待っていると,そのうちビルドが完了する.
  6. ここからは必要があれば追加で実行する.追加するライブラリはZlibとbzip2というアーカイブ関係のライブラリ.b2.exe --toolset=intel-17.0-vc14 --cxxflags=/Qstd=c++11 --build-type=complete architecture=x86 address-model=64 -j 8 stage --prefix=c:\Boost -sBZIP2_SOURCE="C:\bzip2-1.0.6" -sZLIB_SOURCE="C:\zlib-1.2.11".というようにZlibとbzip2のソースディレクトリのパスを指定して実行する.
  7. ビルドが完了するとBoostでzlibとbzip2が使えるようになる
  8. b2.exe --toolset=intel-17.0-vc14 --cxxflags=/Qstd=c++11 --build-type=complete architecture=x86 address-model=64 -j 8 install --prefix=C:\Boost.ここで--prefixはインクルードファイル,ライブラリファイルがインストールされるディレクトリパスなので,個人の環境に合わせて変更する
--prefixで指定したディレクトリにインクルードディレクトリとライブラリディレクトリがコピーされていれば完了

一応,Visual Studio 2012,2013,2017でも1番目のVisual Studioコマンドプロンプトの部分をそれぞれのバージョンに合わせて実行すればビルドできます.

以下のページを参考にしました
https://software.intel.com/en-us/articles/building-boost-with-intel-c-compiler-150
http://stackoverflow.com/questions/2629421/how-to-use-boost-in-visual-studio-2010

0 件のコメント:

コメントを投稿