あめだまふぁくとりー

Boost.Graphとかできますん

Boost 1.59 を GitHub リポジトリのソースからビルド

いつもは zip か, Homebrew でインストールしていたのを使用していましたが, 今回は GitHub から持ってきたのでメモを残しておきます.

# boost のトップリポジトリを取得
git clone https://github.com/boostorg/boost.git

# 各ライブラリのリポジトリを取得
cd boost
git submodule init
git submodule update

# Boost 1.59 をチェックアウト
git checkout -b boost-1.59.0 boost-1.59.0
git submodule update

# Clang C++11 を使用してビルドするように user-config.jam を編集
touch ~/user-config.jam
echo 'using clang : 3.6 : /usr/local/opt/llvm/bin/clang++ : <cxxflags>"-std=c++11 -stdlib=libc++" <linkflags>"-stdlib=libc++" ;' >> ~/user-config.jam
# Boost.MPI と Boost.Parallel Graph もビルドするように設定
echo "using mpi ;" >> ~/user-config.jam

# ヘッダファイル群の構成
b2 headers
# ICU_PATH を指定しないと regex のビルドに失敗するので ICU_PATH を指定してビルド
b2 --debug-configuration --layout=versioned -sICU_PATH=/usr/local/opt/icu4c stage 2>&1 | tee stage.log 

Boost.Build, OpenMPI, ICU は Homebrew でインストール済みでした.

Coroutine2 を使用するには C++14 でビルドする必要がありそうです.