Geant4新版本:新安装方法,新运行方式 - cnscott的日志 - 网易博客
Geant4 9.5 版本终于在2011年12月2日这一天按计划准时来到了我们的面前,新版本中很多方面都发生了改变(Release Notes)。不仅物理方面有不少的改进,安装和运行方式也有很大不同。cnscott的博客:cnscott.blog.163.com
安装和运行方面的主要不同:
1. 默认使用CMake配置安装,原来的Configure脚本被移除
2. 内部集成了CLHEP库,不需要额外安装
3. 在安装时可以选择是否安装G4NDL和G4EMLOW等库文件,默认不会安装
4. 支持使用CMake为Geant4程序生成Make文件,这种方式不需要设置Geant4的环境变量
cnscott的博客:cnscott.blog.163.com
Ubuntu系统终端窗口中安装的步骤:
1. 安装gcc等编译程序
sudo apt-get install build-essential
2. 安装cmake
sudo apt-get install cmake
3. 根据安装需要的库文件,比如
sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev libxt-dev libXmu-dev libXi-dev zlib1g-dev libgl2ps-dev libexpat1-dev libxerces-c-dev
4. 对于新版的Ubuntu,比如11.10版本,可能需要重新为OpenGL库文件建立链接
cd /usr/lib/i386-linux-gnu/
sudo ln -s /usr/lib/libGL.so .
否则可能会出现下面的错误:
make[2]: *** No rule to make target `/usr/lib/i386-linux-gnu/libGL.so', needed by `outputs/library/Linux-g++/libG4gl2ps.so'. Stop.
make[1]: *** [source/visualization/externals/gl2ps/CMakeFiles/G4gl2ps.dir/all] Error 2
make: *** [all] Error 2
5. 下载安装文件
先到Geant4的网站下载最新版本,文件名类似geant4.9.5.tar.gz或者geant4.9.5.zip。将文件解压到任意位置,比如/home/cnscott/geant4.9.5目录。
6. 使用CMake生成Makefile
在geant4.9.5所在的目录下建立geant4.9.5-build目录,也就是/home/cnscott/geant4.9.5-build,并进入该目录
cd /home/cnscott/geant4.9.5-build
然后输入下边命令来进行默认安装(这样的话一切都使用默认设置,Geant4的安装目录将会被设置为/usr/local,OpenGL等库也不会被安装)
cmake ../geant4.9.5
如果你想更改默认安装目录,并且安装其他相关的工具,比如OpenGL, RayTracer和GDML的话,可以使用
cmake -DCMAKE_INSTALL_PREFIX=/home/cnscott/geant4.9.5 -DGEANT4_USE_OPENGL_X11=ON -DGEANT4_USE_RAYTRACER_X11=ON -DGEANT4_USE_GDML=ON ../geant4.9.5
如果你想要安装相关的Data Libraries,在联网的情况下,可以加入 -DGEANT4_INSTALL_DATA=ON 选项来安装,这时相关的库文件会自动下载并安装到Geant4安装目录下的data文件夹中。也可以手动安装库文件,先到Geant4的网站下载相关的库文件,然后解压到某个目录中,比如Geant4安装目录下的data文件夹。库文件的位置要通过环境变量来告诉Geant4程序,相应的环境变量设置如下:
export G4ABLADATA=/home/cnscott/geant4.9.5/data/G4ABLA3.0
export G4LEDATA=/home/cnscott/geant4.9.5/data/G4EMLOW6.23
export G4LEVELGAMMADATA=/home/cnscott/geant4.9.5/data/PhotonEvaporation2.2
export G4NEUTRONHPDATA=/home/cnscott/geant4.9.5/data/G4NDL4.0
export G4NEUTRONXSDATA=/home/cnscott/geant4.9.5/data/G4NEUTRONXS1.1
export G4PIIDATA=/home/cnscott/geant4.9.5/data/G4PII1.3
export G4RADIOACTIVEDATA=/home/cnscott/geant4.9.5/data/RadioactiveDecay3.4
export G4REALSURFACEDATA=/home/cnscott/geant4.9.5/data/RealSurface1.0
7. 使用make命令进行编译
如果你的电脑有N个处理器,可以使用如下命令
make -jN
8. 安装到指定的目录
make install
注意,安装完成之后并不需要设置环境变量,因为新的使用cmake生成的Makefile并不需要这些环境变量,除非你要使用原来的方法(后面讨论)。cnscott的博客:cnscott.blog.163.com
运行例子
两种方法编译和寻行exampleN01, 针对我的Geant4安装在/home/cnscott/geant4.9.5下的情况(双核处理器):
1. 使用CMake
进入exampleN01所在目录(别忘记设置相关截面文件的环境变量)
mkdir build-N01
cd build-N01
cmake -DGeant4_DIR=/home/cnscott/work/geant4/geant4.9.5/lib/Geant4-9.5.0 ..
make -j2
./exampleN01
2. 使用传统方法
设置环境变量
source /home/cnscott/geant4.9.5/share/Geant4-9.5.0/geant4make/geant4make.sh(如果安装时没有选择安装库文件,还要手动设置相关环境变量,使程序能够找到库文件所在的位置)
进入exampleN01所在目录
make
$G4WORKDIR/bin/Linux-g++/exampleN01
安装过程的更多细节可以在解压后的Geant4目录下面cmake子目录中的INSTALL.g4cmake文件中找到,或是查看官方提供的Installation Guide。如果在安装Qt的过程用遇到问题,可以参见fada的博客日志——“编译Geant4.9.5的例题时找不到qt相关的头文件的错误的解决方法”。