四步轻松安装Geant4 (Linux篇) | 入门

Posted 偷猫粮的汪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了四步轻松安装Geant4 (Linux篇) | 入门相关的知识,希望对你有一定的参考价值。

最近开始为订阅号“Geant4不完全学习指南”写一些文章。

正文开始。

四步轻松安装Geant4 (Linux篇) | 入门

软件版本:Ubuntu16.04,Geant4.10.04
预备知识:Linux命令行终端的简单使用

Geant4官方已经适配主流的计算机平台 (Windows, Linux, macOS), 其中在用户数量上以Linux居多。所以我们先从Linux平台上的安装讲起。当然Linux不止有一个系统,而是有不同厂家发行的各种发行版(Ubuntu, CentOS, Fedora, RedHat, Scientific Linux, Arch Linux 等等)。这些系统之间的差异有时会给Geant4造成问题,所以我们还是推荐初学者只使用官方测试过的系统.以Geant 4.10.04版本来说,CentOS7, Scientific Linux CERN 6和 Ubuntu 16都是不错的选择。其中笔者尤其建议初学者从Ubuntu系统上手,配合CMake自动化配置工具,Geant4的安装可以很简单。使用者甚至不需要明白CMake的技术细节,按照步骤输入命令终端即可。虽然最新的Ubuntu系统是17.10,但是因为Geant 4.10.04只对主版本号16的Ubuntu做过测试,我们还是建议大家使用Ubuntu 16.04。如果想要安装其他版本的Geant4,也可以查一下Release Note,使用官方测试过的系统可以避免很多问题。

1. 系统准备

sudo apt-get update #保持系统更新

sudo apt-get install build-essential #安装gcc等编译程序

sudo apt-get install cmake #安装cmake

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 # 安装必需的库文件

注意:libXmu-dev libXi-dev在新版本的ubuntu下已经更名为libxmu-dev libxi-dev

2. 下载Geant4

Geant4的官网下载最新版本geant4.10.04.tar.gz或者geant4.10.04.zip.

将文件解压到制定位置,比如/home/handbook/,

tar -xzvf geant4.10.04.tar.gz

现在就有了目录/home/handbook/geant4.10.04

3. 使用CMake生成Makefile

在/home/handbook/geant4.10.04/目录下建立build/文件夹,并进入

cd /home/handbook/geant4.10.04
mkdir build
cd buiid/

我们要在 build/ 文件夹下使用CMake工具来生成Makefile,同时设置 /home/handbook/geant4.10.04 为安装目录,为Geant4安装一些必要的软件支持 (OpenGL, RayTracer和GDML),并且自动下载物理模拟必须的数据库文件。

cmake -DCMAKE_INSTALL_PREFIX=/home/handbook/geant4.10.04 -DGEANT4_USE_OPENGL_X11=ON -DGEANT4_USE_RAYTRACER_X11=ON -DGEANT4_USE_GDML=ON -DGEANT4_INSTALL_DATA=ON ..

如果命令正常运行的话,大概会这样结束:

-- Configuring done
-- Generating done
-- Build files have been written to: /home/handbook/geant4.10.04/build

4. 使用make命令进行编译

如果你的电脑有N个处理器,可以使用如下命令

make –jN 否则只用 make

如果命令正常运行的话,大概会这样结束:

[100%] Building CXX object source /visualization/OpenGL/CMakeFiles/G4OpenGL.dir/src/G4OpenGLXViewer.cc.o
[100%] Linking CXX shared library ../../../BuildProducts/lib/libG4OpenGL.so
[100%] Built target G4OpenGL

最后安装编译好的文件到我们刚才指定的文件夹

make install

如果命令正常运行的话,大概会这样结束:

--Installing: /home/handbook/geant4.10.04/include/Geant4/G4OpenGLImmediateXViewer.hh
-- Installing: /home/handbook/geant4.10.04/include/Geant4/G4OpenGLStoredX.hh
-- Installing: /home/handbook/geant4.10.04/include/Geant4/G4OpenGLStoredXViewer.hh
-- Installing: /home/handbook/geant4.10.04/include/Geant4/G4OpenGLXViewer.hh

好了,如果没有报错的话,你的安装就已经完成了!

我们来简单验证一下Geant4是否正常工作。 geant4.10.04/examples 下面有很多的示例可以测试。我们选一个最简单的示例 examples/basic/B1

首先,我们要加载Geant4运行时的环境

source ~/geant4.10.04/bin/geant4.sh

然后,我们拷贝一份代码,并且编译。

cd /home/handbook
cp –r geant4.10.04/examples/basic/B1 .
cd B1
mkdir build
cd build
cmake ..
make

如果命令正常运行的话,大概会是这样:

handbook@handbook-VirtualBox:~/B1/build$ make
Scanning dependencies of target exampleB1
[ 12%] Building CXX object CMakeFiles/exampleB1.dir/exampleB1.cc.o
[ 25%] Building CXX object CMakeFiles/exampleB1.dir/src/B1EventAction.cc.o
[ 37%] Building CXX object CMakeFiles/exampleB1.dir/src/B1DetectorConstruction.cc.o
[ 50%] Building CXX object CMakeFiles/exampleB1.dir/src/B1SteppingAction.cc.o
[ 62%] Building CXX object CMakeFiles/exampleB1.dir/src/B1ActionInitialization.cc.o
[ 75%] Building CXX object CMakeFiles/exampleB1.dir/src/B1PrimaryGeneratorAction.cc.o
[ 87%] Building CXX object CMakeFiles/exampleB1.dir/src/B1RunAction.cc.o
[100%] Linking CXX executable exampleB1
[100%] Built target exampleB1

编译完后,我们在build/目录下就得到了一个可执行程序exampleB1。运行后会打开一个可视化的界面,那就说明正常运行了。
./exampleB1

以上是关于四步轻松安装Geant4 (Linux篇) | 入门的主要内容,如果未能解决你的问题,请参考以下文章

CentOS8安装Geant4笔记:Geant4介绍编译和安装

IDE的使用:代码快速浏览(Qt Creator篇)

Geant4采用make和cmake编译运行geant4自带例子的方法

CentOS8安装Geant4笔记:Geant4介绍编译和安装

CentOS8安装Geant4笔记:Geant4介绍编译安装支持Qt5界面并运行exampleB1例程显示Qt界面

ubuntu装geant4遇到如下问题