Boostのビルドと使用です。
今回は1.70.0をビルドしました。
CMakeのバージョンはCLionに入っている3.13.2を使用しました。
理解しているわけではなく、なんか動いた程度の記事です。
Boost C++ Libraries
ビルド
「bootstrap.bat」を実行します。
「b2.exe」を実行します。オプションは以下の通りです。
※スペースを改行にしてあります。
※ 「#」の行はコメントです。
オプション
# デフォルトでは14.2でビルドされていた。14.1を明示的に指定(理由は後述) toolset=msvc-14.1 threading=multi variant=debug,release runtime-link=shared link=shared # 64bitなので address-model=64 install # 成果物の出力先 --build-dir=build/x64 # ビルドに使うスレッド数。自分のCPUは6コア12スレッドなのでMAXを指定した。 -j12 # その場に展開(いらないかなこれ) --prefix=.\
CMake
systemとかfilesystemとか書かれている部分に使用するモジュールを書けばいいみたいです。
set(BOOST_ROOT "path/to/boost_1_70_0") find_package(Boost 1.70.0 COMPONENTS system filesystem REQUIRED) include_directories(path/to/boost_1_70_0/include/boost-1_70)
Could not find the following Boost libraries
boost_systemとかboost_filesystemが見つからないと怒られます。その場合は以下のオプションを追加してみます。
set(Boost_DEBUG ON)
「boost_system-vc141-mt-x64-1_70」とか似たような記述が見つかると思います。そのファイルが存在しているか確認します。
自分は「boost_system-vc142-mt-x64-1_70」というのがありました。
msvc14.2でビルドされたけど探してるのは14.1みたいなので上記ではmsvc14.1を使うように明示しました。