2012年11月12日月曜日

SL6.3上にmusrfitをインストール!!!の前にROOT

予告の通り,musrfitをインストールしましたので,ご報告と,備忘のために記録します.

ずっと色々なことをMacOSXで頑張って来たのですが,Linuxを使えるとなると,欲が出てしまうものです.
MacOSX上にmusrfitをビルドした時も四苦八苦して,やっと出来たのにmusrT0がうまく動かず,結局スペクトルを見る程度しか出来なかったので,今回はかなり期待して作業開始です.
(もちろん,私よりウデのある方がビルドすれば動くとは思います...)

まずは,例のページにアクセス!

Scientific Linuxなら実はyumでROOTがインストール出来るはずなのですが,yumで入れたROOTはインストールされている場所の問題なのか,musrfitをmakeするときにコンパイラがライブラリをうまくリンク出来ませんでした.
(私が未熟なんだと思います)

そこで,Setting up musrfit on Different Platformのページに従い,まずはROOTからインストールします.

まずその前に,

# yum install boost boost-devel gsl gsl-devel fftw3 fftw3-devel libxml2 libxml2-devel qt qt-devel

として,必要なパッケージをインストールします.
それから,NeXusフォーマットを読みたかったので,mxml,hdf4とhdf5をインストールしようとしました.
ところが,mxmlのパッケージが見つかりません.
しょうがないのでNeXusはとりあえずスキップして,とにかくROOTを動かすことに目標を置きます.

まずは,/opt/root-system/というディレクトリを作ります.
そこにパッケージを展開するはずなのですが,ちょっとした手違いで,/opt/root-system/rootというディレクトリに展開されてしまいました.

まぁ,くよくよしても仕方ないので,
$ cd /opt/root-system/root
$ .  configure
で,
$ make
$ su
# make install

っとやってしまいました.
すると,そもそもminuit2とかすら使えないと言う驚きの結果に.

そこで,基本に立ち返り,上述のサイトを見ると,configureの際にいろいろオプションつけなきゃいけないとのこと.

そこで,
$ . configure linux --gminimal --enable-asimage --enable-mathmore --enable-minuit2 --enable-xml
とやると,いろいろ作ってくれるみたいです.

次に,コンパイル時にライブラリをリンク出来るように,
# echo "/opt/root-system/root/lib" >> /etc/ld.so.conf.d/root-system.conf
# /sbin/ldconfig

最後に,bashに環境変数を設定します.
下の二行を.bashrcまたは.bash_profileに追加して,再度ログインします.
export ROOTSYS=/opt/root-sytstem/root
export PATH=$ROOTSYS/biin:$PATH

これで,
$ echo $ROOTSYS
$ echo $PATH
と打って,それぞれのパスが通っていればオッケー



次はいよいよmusrfitのインストールです.

<次に続く>

0 件のコメント:

コメントを投稿