ぶろぐ

ボボボ・boost

ちょっと動かしたいプログラムがあったので,C++のソフトウェアライブラリの「boost」をインストールする必要がありました. とりあえずbrewでインストールします

brew install boost

これでboost1.75.0がインストールされたようです.

プログラム中でinclude書きます

#include <boost/random.hpp>

とりあえずコンパイルします

$ g++ sample.cpp 
sample.cpp:9:10: fatal error: boost/random.hpp: No such file or directory
    9 | #include <boost/random.hpp>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.

あれ,見つからないようです.どうしたものかといろいろ調べましたが,どうやらboostには展開するだけで使えるライブラリがありdate_time, regex, thread, python, signals, test, filesystem, serialization, program_options 以外の全ライブラリは,ヘッダを #include するだけで、すぐに使用できるそうです.

それ以外のライブラリはビルド(くそなが)をしないと動きません.グーグル大先生で調べたらこのビルドのお話がたくさん出てきたので時間がかかってしまったので記事にしました.

ビルドをしたい場合はこちら

boostjp.github.io

どうやらC++のライブラリにもヘッダオンリーとビルドライブラリで派閥があるらしい. くそながビルドをしなくて済むならばあとはpathを通すだけです. 適当に

export CPATH=$CPATH:/usr/local/Cellar/boost/1.75.0/include
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/Cellar/boost/1.75.0/lib

を.zshrcに書き込んで反映させたら動きました.今度時間があるときに多分使わないですがビルドしてみます.

参考

Let's Boost - インストール方法

Mac で C++ のライブラリ boost を使う · GitHub