はじめに

  • この記事はCERNが開発している解析ツール「ROOT」をインストールするための方法が書かれています。
  • 自分は情報系の学生ですが、わけあってROOTを使う必要があります。
  • インストール時にいろいろと戸惑った点があったので、自分用のメモを兼ねつつ共有することにしました。
  • 対象OSはUbuntuです。Debian系のOSが好きなので。Scientific Linuxにインストールする方法のほうが情報は多いかもしれません。

環境・ROOTのversion

  • OS : Ubuntu 16:04
  • GCC : version 5.4
  • ROOT : version 6.12.06

インストール手順

Required Packagesをインストール

ROOTをUbuntu上で動かすには、予めパッケージをいくつかインストールしておく必要があります。
以下のページに必要なパッケージが列挙されています。
https://root.cern.ch/build-prerequisites#ubuntu

必要なパッケージを次のコマンドでインストールします。

$ sudo apt-get update
$ sudo apt-get install git dpkg-dev cmake g++ gcc binutils libx11-dev libxpm-dev \
libxft-dev libxext-devl

Rootのソースファイルをダウンロード

Ubuntu用にコンパイルしたファイル をCERNが用意してくれいます。今回はこれを使います。バイナリファイルのコンパイルはうまく実行できませんでした(2018-03-14時、詳しくは「戸惑った点」を参照)。

ROOTソースファイルのダウンロードは以下のページから。
https://root.cern.ch/downloading-root

「Latest ROOT Releases Pro」をクリックすると、ダウンロード可能なファイルの一覧が表示されます。
あらかじめ

$ gcc -v

でgccのバージョンを確認してください。自分の場合、バージョンは5.4だったので

Ubuntu 16 gcc5.4 root_v6.12.06.Linux-ubuntu16-x86_64-gcc5.4.tar.gz

をダウンロードしました。

ファイルの展開

自分はホームディレクトリに「usr」というディレクトリを作り、ここにインストールします。
ダウンロードしたファイルを次のコマンドで展開します。展開後は「root」というファイルが生成されます。

$ tar zxvf root_v6.12.06.Linux-ubuntu16-x86_64-gcc5.4.tar.gz
$ ls
root  root_v6.12.06.Linux-ubuntu16-x86_64-gcc5.4.tar.gz

インストールするディレクトリに展開したファイルをコピーします。Downloadディレクトリで展開した場合は次のコマンドを実行。

$ cp -r ~/Download/root ~/usr/

.bash_profileに追記

$ vim ~/.bash_profile

のコマンドでエディタを開いたあと以下を追記

. ~/home/username/usr/root/bin/thisroot.sh

その後.bash_profileを読み込みます。

$ source ~/.bash_profile

以上でインストール作業は終了です。

ROOTの起動

ターミナルを起動後、rootと入力することで起動できるかと思います。

$ root
------------------------------------------------------------
| Welcome to ROOT 6.12/06
|
http://root.cern.ch |
(c) 1995-2017, The ROOT Team |
| Built for linuxx8664gcc |
| From tag v6-12-06, 9 February 2018 |
| Try '.help', '.demo', '.license', '.credits', '.quit'/'.q' |
------------------------------------------------------------
root [0]

戸惑った箇所

バイナリファイルからコンパイルできなかった

最初はバイナリファイルからインストールを試みましたが、以下のようなエラーが発生しmakeが正常に終了しませんでした...。

$ make
g++ -O2 -DNDEBUG -pipe -m64 -std=c++11 -Wshadow -Wall -W -Woverloaded-virtual -fPIC -Iinclude -DR__HAVE_CONFIG
-pthread
-MMD -MP -o hist/unfold/src/TUnfoldBinning.o -c /home/****/*****/root-
6.12.06/hist/unfold/src/TUnfoldBinning.cxx
In file included from /home/****/*****/root-6.12.06/hist/unfold/src/TUnfoldBinning.cxx:104:0:
include/TUnfoldBinningXML.h:47:22: fatal error: TXMLNode.h: そのようなファイルやディレクトリはありません
compilation terminated.
Makefile:731: ターゲット 'hist/unfold/src/TUnfoldBinning.o' のレシピで失敗しました
make: *** [hist/unfold/src/TUnfoldBinning.o] エラー 1

TXMLNode.hが無いよ!と言われているのですが、それCERN側が用意しているヘッダーファイルですし...。
調べると同様のエラーを訴えてる人がいました↓。

https://stackoverflow.com/questions/45725540/fatal-error-txmlnode-h-no-such-file-or-directory

また、このサイト( https://root-forum.cern.ch/t/error-fatal-error-txmlnode-h-no-such-file-or-directory-i-met-while-installing-root/25933/2 )に

The “configure” script is known to be broken in ROOT 6.

とあり、どうやらCmakeまわりのトラブル?のようです。このような状態だったので、今回はUbuntu用にコンパル済みのファイルを使いました。

おわりに

UbuntuにROOTをインストールする方法を説明しました。
初投稿で拙い部分があると思います。間違った点があれば指摘ください。

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.