ANAPAWをDebian etchにインストールするときのおぼえがき。このANAPAWはNBBQのデータ解析用。
(走りがき。たくさん間違っていると考えられる。)
インストールの手順をまとめる。以下の手順を順番に実行すれば、インストールできるかもしれない。ただし、g77 がインストールされている必要がある。
$ su Password: ルートのパスワードを打つ # apt-get install cernlib tcsh xaw3dg-dev libxaw7-dev # update-alternatives --config csh /bin/tcsh を選択 # cd /lib # ln -s libreadline.so.5 libreadline.so # ln -s libncurses.so.5 libncurses.so # exit $ cd $ mkdir ~/exp
ここからANAPAW(最新のバージョンは、2.3.1) をダウンロードし、そのファイルを自分のホームディレクトリにコピー。
上記のファイルをコピーしたら、以下のコマンドで展開。
$ cd ~/ # ホームディレクトリに移動。 $ tar zxvf anapaw_v2-3-1.tar.gz # 展開。 $ emacs ~/.cshrc ~/usr/local/anapaw/Setup/setupanapaw
以下のファイルを編集。
ファイル名: ~/.cshrc |
---|
以下の行を書き加える。 alias analogin 'source $HOME/usr/local/anapaw/Setup/setupanapaw' |
ファイル名: ~/usr/local/anapaw/Setup/setupanapaw |
---|
setenv CERNLIB /cern/pro/lib の行を setenv CERNLIB /usr/lib に変更 setenv ANAPAW_WORK $HOME/exp/02006 の行を以下のように#でコメントアウトし、 #setenv ANAPAW_WORK $HOME/exp/02006 この行の次の行に、以下の行を追加する。 setenv ANAPAW_WORK $HOME/exp/nbbq |
したらば、analoginする。
$ csh # cシェル起動。 $ analogin # analogin。ANAPAWの環境設定。ディレクトリ~/exp/nbbqができる。
ここから bbsrc_naok.tar.gz (naok版) をダウンロードし、そのファイルをディレクトリ ~/exp/nbbqにコピー。
上記のファイルをコピーしたら、以下のコマンドで展開。
$ cd ~/exp/nbbq # ~/exp/nbbqに移動。 $ tar zxvf bbsrc_naok.tar.gz # 展開。 $ emacs ~/usr/local/anapaw/src/vana/Makefile ~/exp/nbbq/src/makefile
以下のファイルを編集。
ファイル名: ~/usr/local/anapaw/src/vana/Makefile |
---|
CFRAGS=-I/usr/X11R6/include LFRAGS=-L/usr/X11R6/lib ↓ 変更 CFRAGS=-I/usr/include LFRAGS=-L/usr/lib |
ファイル名: ~/exp/nbbq/src/makefile |
---|
PRIVLIB = -L/usr/X11R6/lib -lX11 -ldl -lcrypt -L$(ANAPAW_LIB) -lanalib\ -lXt -lXaw -lpthread LFLAGS = -L$(CERNLIB) -lgeant -lpawlib -lgraflib -lgrafX11 -lpacklib -lmathlib -lkernlib -Icern -lnsl -llapack -lblas -lreadline -ltermcap -lcrypt -ldl ↓ 変更 PRIVLIB = -L/usr/lib -lX11 -ldl -lcrypt -L$(ANAPAW_LIB) -lanalib\ -lXt -lXaw -lpthread LFLAGS = -L$(CERNLIB) -lgeant321 -lpawlib -lgraflib -lgrafX11 -lpacklib -lmathlib -lkernlib -Icern -lnsl -llapack -lblas -lreadline -lncurses -lcrypt -ldl |
したらば、コンパイル。
$ makelib $ makeana $ anapaw # これでANAPAW起動
Debianの標準インストールでは、ANAPAWを動かすためのパッケージが足り ないので、まずそれらをインストールする。
ANAPAWをインストールするには、CERN Program Libraryが必要。以下のコマンドでインストール。ちなみに、これでPAWが使えるようになる。
$ su Password: ルートのパスワードを打つ # apt-get install cernlib
デフォルトの csh だと、analogin 時に実行される setupanapaw ファイル中の setana コマンドが引数をとらず、正しい動作をしない。よって、csh コマンドで tcsh が 実行されるようにする。これは、update-alternatives コマンドを用いて設 定できる。
$ su Password: ルートのパスワードを打つ # apt-get install tcsh # update-alternatives --config csh /bin/tcsh を選択
ここからANAPAW(最新のバージョンは、2.3.1) をダウンロードしたら、自分のホームディレクトリに移動させ、以下のコマンドで展開。
$ cd ~/ # ホームディレクトリに移動。 $ ls # anapaw_v2-3-1.tar.gz がいるか確認。 Desktop/ anapaw_v2-3-1.tar.gz $ tar zxvf anapaw_v2-3-1.tar.gz # 展開。今いるディレクトリにusr/local/anapaw_v2-3-1/というディレクトリができ、そこに展開される。 $ ls # 展開できたか確認。usr/ ディレクトリができてる。 Desktop/ anapaw_v2-3-1.tar.gz usr/
環境変数などを設定する。まず、Cernlibのある場所と、ANAPAW_WORKを指定する。ANAPAW_WORK とは、データ解析を行うための作業場所として使いたいディレクトリを指定する。以下では、~/exp/nbbq というディレクトリを指定している。~/expというディレクトリがなければ作る。nbbqはanaloginしたとき作られるため、ここで作る必要はない。
$ mkdir ~/exp # ~/expというディレクトリがなければ作る。 $ gedit ~/usr/local/anapaw/Setup/setupanapaw # エディタはemacsとかでもいいけど。 setenv CERNLIB /cern/pro/lib の行を setenv CERNLIB /usr/lib に変更 setenv ANAPAW_WORK $HOME/exp/02006 の行を以下のように#でコメントアウトし、 #setenv ANAPAW_WORK $HOME/exp/02006 この行の次の行に、以下の行を追加する。 setenv ANAPAW_WORK $HOME/exp/nbbq
次に、ホームディレクトリの.cshrc というファイルに、以下の行を追加する。~/.cshrcがない場合は、新たに作る。~/.cshrcとは、cシェルが起動したときに、自動的に実行されるファイルである。
$ gedit ~/.cshrc 以下の行を書き加える。 alias analogin 'source $HOME/usr/local/anapaw/Setup/setupanapaw'
cシェルを起動し、analoginする。これで、~/exp/nbbqというディレクトリに移動する。
$ csh $ analogin
ANAPAWのライブラリを作る。デフォルトでは $ makelib コマンドを打っても以下の感じのエラーが出る。
$ makelib 〜〜〜 gcc viewana.c -I/usr/X11R6/include -L/usr/X11R6/lib -lX11 -lXt -lXaw -o viewana viewana.c:19:31: error: X11/Xaw3d/Command.h: そのようなファイルやディレクトリはありません viewana.c:20:29: error: X11/Xaw3d/Paned.h: そのようなファイルやディレクトリはありません viewana.c:21:29: error: X11/Xaw3d/Label.h: そのようなファイルやディレクトリはありません viewana.c:22:33: error: X11/Xaw3d/AsciiText.h: そのようなファイルやディレクトリはありません viewana.c:23:28: error: X11/Xaw3d/Form.h: そのようなファイルやディレクトリはありません 〜〜〜
そこで、以下のパッケージをインストールする。
$ su Password: ルートのパスワードを打つ # apt-get install xaw3dg-dev libxaw7-dev
さらに、 ~/usr/local/anapaw/src/vana/Makefileを以下のように編集する。
$ exit $ gedit ~/usr/local/anapaw/src/vana/Makefile CFRAGS=-I/usr/X11R6/include LFRAGS=-L/usr/X11R6/lib ↓ CFRAGS=-I/usr/include LFRAGS=-L/usr/lib
これで、エラーなくmakelibできる。
$ makelib
ここから bbsrc_naok.tar.gz (naok版) をダウンロードし、そのファイルをディレクトリ ~/exp/nbbqに移動させ、そこで展開する。
$ pwd # 現在いるディレクトリ確認。 /root/exp/nbbq $ ls # bbsrc_naok.tar.gz がいるか確認。 bbsrc_naok.tar.gz など $ tar zxvf bbsrc_naok.tar.gz # 展開。
ANAPAWをコンパイルする。デフォルトでは、以下のようなエラーが出たりする。
$ makeana 〜〜〜 /usr/bin/ld: cannot find -lgeant とか、 /usr/bin/ld: cannot find -lreadline とか、 /usr/bin/ld: cannot find -ltermcap 〜〜〜
まず、~/exp/nbbq/src/makefile を以下のように編集する。
$ gedit ~/exp/nbbq/src/makefile PRIVLIB = -L/usr/X11R6/lib -lX11 -ldl -lcrypt -L$(ANAPAW_LIB) -lanalib\ -lXt -lXaw -lpthread LFLAGS = -L$(CERNLIB) -lgeant -lpawlib -lgraflib -lgrafX11 -lpacklib -lmathlib -lkernlib -Icern -lnsl -llapack -lblas -lreadline -ltermcap -lcrypt -ldl ↓ PRIVLIB = -L/usr/lib -lX11 -ldl -lcrypt -L$(ANAPAW_LIB) -lanalib\ -lXt -lXaw -lpthread LFLAGS = -L$(CERNLIB) -lgeant321 -lpawlib -lgraflib -lgrafX11 -lpacklib -lmathlib -lkernlib -Icern -lnsl -llapack -lblas -lreadline -lncurses -lcrypt -ldl
つぎに、/libディレクトリに移動し、libreadline libncursesのリンクを作る。
$ su Password: ルートのパスワードを打つ # /sbin/ldconfig -p | grep "libreadline*" libreadline.so.5 (libc6) => /lib/libreadline.so.5 # /sbin/ldconfig -p | grep "libncurses*" libncursesw.so.5 (libc6) => /lib/libncursesw.so.5 libncurses.so.5 (libc6) => /lib/libncurses.so.5 # cd /lib # ln -s libreadline.so.5 libreadline.so # ln -s libncurses.so.5 libncurses.so # /sbin/ldconfig # /sbin/ldconfig -p | grep "libreadline*" libreadline.so.5 (libc6) => /lib/libreadline.so.5 libreadline.so (libc6) => /lib/libreadline.so # /sbin/ldconfig -p | grep "libncurses*" libncursesw.so.5 (libc6) => /lib/libncursesw.so.5 libncurses.so.5 (libc6) => /lib/libncurses.so.5 libncurses.so (libc6) => /lib/libncurses.so
これで、エラーなしでANAPAWがコンパイルできる。
$ makeana