039日記

プリンとともに

特定バージョンのBoostとCMakeをインストール on Ubuntu

特定バージョンのBoostをインストールする方法が分かりづらかったのでメモしておきます。

Ubuntuではデフォルトで Boost がインストールされている可能性がありますが、これをアンインストールせずに別バージョンのBoostをインストールする方法を紹介します。

Boostのインストール

Boostのダウンロード

以下から欲しいバージョンをダウンロードします。

https://sourceforge.net/projects/boost/files/boost/

最新版は以下からでも入手できます。

https://www.boost.org/users/download/#live

開発版は以下のgitから入手できます。

https://github.com/boostorg

Boostのビルド

説明のため、2020年6月現在最新の 1.73.0 を使います。

ダウンロードしたファイルを解凍します。

$ tar -xvf boost_1_73_0.tar.gz

その後、ビルドします。

$ cd boost_1_73_0
$ ./bootstrap.sh
$ sudo ./b2 install --prefix=/usr/local

b2 はオプションを指定でき、以下のようなオプションがあります。

toolset=gcc-7 ... gcc-7 でコンパイル

--prefix=/usr/local ... /usr/local 以下にインストール

-j5 ... 4コア(= 5 - 1)で並列処理

/usr 以下を絶対に汚したくないという人は別の場所を指定してください。

Boostのアンインストール方法

以下のように、生成された部分を削除します。

$ sudo rm /usr/local/lib/libboost*
$ sudo rm -r /usr/local/include/boost
$ sudo rm -r /usr/local/lib/cmake

3行目は、バージョンによっては不要です。

Boostのインストールパス等について

apt で libboost-dev や libboost-all-dev がインストールされている場合、/usr/include 以下の boost ディレクトリに入っていると思われます。

しかし、システムの仕様上 /usr/local 以下の方が優先されるため、もとの Boost はアンインストールしなくても問題ありません。

CMakeのインストール

Boost を新しくした際、CMake のバージョンが古いと CMake が Boost を認識しない可能性があります。

その場合は、CMakeの最新版等をインストールする必要があります。

CMakeのダウンロード

以下から欲しいバージョンをダウンロードします。

https://cmake.org/download/

CMakeのビルド

現在最新の 3.18.0-rc2 で説明します。

ダウンロードしたファイルを解凍します。

$ tar -xvf cmake-3.18.0-rc2.tar.gz

その後、ビルドします。

$ cd cmake-3.18.0-rc2
$ ./bootstrap
$ make
$ sudo make install

先程と同じく、インストール時にオプションで prefix を指定できます。

指定しない場合は、/usr/local が選択されます。

CMakeのアンインストール方法

以下を実行するだけでOKです。

$ sudo make uninstall