部門 > Geant4 > Geant4のインストール


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

卒研でGeant担当だった同期のSくんにご寄稿いただきました。インストールが簡略化されたようです。以前の内容はこちら



変更点
  • clhep が geant4 のソースに入って個別インストール不要に!
  • cmake を使って make ファイルを作るように変更になった。
  • cmake の引数のオプションを使うとInstall Dataをまとめて自動ダウンロード(以下でもこのオプションを使用してます)
  • make でプログレスが表示され見やすくなった!(あくまで個人的に;
etc...

ということで、インストールとかのビルド手順のまとめ。
ソースコードを持ってきて解凍したのは /home/soyama/geant4.9.5、インストールするのは /home/soyama/geant/geant4.9.5 だとした場合です。

0.(expat-develというのが入ってなかったのでインストール)

↑これはなくても大丈夫っぽい...
気になるかたは各自調べてください。
Expat (library) - Wikipedia, the free encyclopedia

1. geant4 ライブラリの作成用のフォルダの作成とmakefileの作成

$ mkdir /home/soyama/geant
$ mkdir /home/soyama/geant/geant4.9.5-build
$ cd /home/soyama/geant/geant4.9.5-build
$ cmake -DCMAKE_INSTALL_PREFIX=/home/soyama/geant/geant4.9.5 -DGEANT4_INSTALL_DATA=ON -DGEANT4_USE_OPENGL_X11=ON -DGEANT4_USE_RAYTRACER_X11=ON /home/soyama/geant/geant4.9.5
cmakeのオプションは順番に、
 インストールディレクトリ
 Install Dataをまとめて自動ダウンロード
 openGL,x11 Driver
 Ray tracer の使用.

注)cmakeの引数はSくんからのメールによれば/home/soyama/geant/geant4.9.5 となっているが、正しくは/home/soyama/geant4.9.5だと思われる。つまり、cmakeの行は正しくは、
$ cmake -DCMAKE_INSTALL_PREFIX=/home/soyama/geant/geant4.9.5 -DGEANT4_INSTALL_DATA=ON -DGEANT4_USE_OPENGL_X11=ON -DGEANT4_USE_RAYTRACER_X11=ON /home/soyama/geant4.9.5
であろう。(OK)

2. make と install。

make の引数は CPU のcore数とのこと。Pentium DualCore なので、ここでは2に。
$ make -j2
うまく通ると
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Checking whether C compiler has -isysroot
...
...省略
...
-- Configuring done
-- Generating done
-- Build files have been written to: /Applications/geant4.9.5-build
 
と、表示される


3. rootになってinstall

$ sudo make install
完了するとgeant4.9.5 みたいなディレクトリが作られていて,
中にbin lib include shareの4つのディレクトリが入っている。
注)インストール先のフォルダをホームフォルダ内にしてるので、suになる必要はないと思われる。(OK)

4. geant4.9.5/binにあるgeant4.shを実行して環境変数を設定する。

$ cd /home/soyama/geant4.9.5
$ . bin/geant4.sh
とするだけ。何も表示されないが
$ printenv | grep G4
とするとデータファイルのパスなどが通っていることがわかる。
注)シェルスクリプトを実行している所で、ピリオドとbinの間にスペースがあることに注意。(OK)


5. 環境変数の設定

上記4.に加えて、home/soyama/.bashrcなどで次の行を書き加える。(もしかしたらいらないかも)
$ . /home/soyama/geant/geant4.9.5/bin/geant4.sh
注)これもスペースがあることに注意。(OK)


6. novice/N01 をコンパイルしてみる。

$ cd /home/soyama/geant/geant4.9.5/example/novice/N01
$ . /home/soyama/geant/geant4.9.5/share/Geant4-9.5.0/geant4make/geant4make.sh
$ make
errorがなければ、/home/soyama/geant/geant4_workdir/bin/Linux-g++ 以下に実行ファイルができている。
注)1行目で、exampleディレクトリがあるのは/home/soyama/geant4.9.5のほうだと思われる。また、expat-develが入っていないと
/usr/bin/ld: cannot find -lexpat



※作業ディレクトリで上記2行目を実行することでmake時の環境変数の設定が設定されるっぽい。
このシェルスクリプト(?)のディレクトリにPATHを通しておくと、
$ . geant4make.sh
での代用可。

※GNUmakefileにROOTSYSなどの設定を書き込んでいた昔のものがsegmentation errorとなるときは
その部分をコメントアウトすることで対処。

おそらくその他も同様にmakeできる。