ROOTのインストール

ROOTはCERNが開発しているデータ解析、分析用のC/C++, Python, Javascript向けのフレームワーク。 ヒストグラムの作成、解析用ファイル(root file)の作成が得意 (graphとしては少し使いにくいか?..) 割と色々できることが多い (graph作成、フィット、行列計算とか、XMLパーサーとか、Montecrloとか、FFTとか etc.) が、機能によってはrootの公式referenceだけでは理解しにくいものもある。




macに簡単に入れる方法


homebrewには一応rootがあり、brew installで簡単にインストールできるが、非公式らしい。

$ brew install root

因みにこの方法でROOTを入れた場合、~/.zshrcのhomebrewを設定するコマンドの前に、 ROOT用のスクリプトを書かないとhomebrew、homebrewで入れたソフトが使えなくなるので注意。

sourceからビルドする


参考: installing ROOT

まずはソースコードをcern rootからもらってくる

$ curl -O https://root.cern/download/root_v<バージョン>.source.tar.gz

バージョンには使いたいバージョンを入力。
依存関係にあるパッケージ及び、Buildに必要なパッケージをインストールする。

以下macの場合

$ brew install cmake openssl

linuxの場合

$ sudo apt install -y git make cmake gcc-c++ gcc binutils libX11-dev libXpm-dev libXft-dev libXext-dev libssl-dev

インストールしただけでは、プログラム側が探しに行けないので、環境変数にパスを通す。 これで必要なパッケージはインストールできたので、実際にBuildする。 ソースコードのあるディレクトリでbuildすると、ソースとbuildでできたファイルが混ざることになるので、別のディレクトリでbuildする。

cmakeをしたときに、長いメッセージの中のopensslの行でbuiltin_opensslを使うと書いてある場合は、 opensslがインストールできていない、opensslのパスが通っていない等の問題があるので、インストール・パス通しをやり直す。
比較的新しいmacOSを使っている場合、sudoでcmakeをすると~/.zshrcの設定を呼んでくれないので注意! (詳しくはここに書いた)

$ cd /usr/local/src
$ sudo tar zxvf <先程ソースコードのtar fileのパス>
$ sudo mkdir /usr/local/src/root-<バージョン>-build
$ sudo cmake ../root-<バージョン>
$ sudo make

Buildできたら毎回、shellを開いたときにrootが読み込まれるように設定する。
zshなら.zshrcに、bashなら.bashrcに以下を追記。

(中略)
pushd /usr/local/src/root-<バージョン>-build >/dev/null
source bin/thisroot.sh
cd - > /dev/null