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

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

前言

  上一篇,安装了Qt5环境。

  本篇在服务器CentOs8.2上安装geant4软件,geant4使用Qt5来显示。


GEANT4

介绍

  Geant4 是一个用于模拟粒子穿过物质的工具包。其应用领域包括高能、核物理和加速器物理,以及医学和空间科学研究。Geant4 的三篇主要参考论文发表在物理研究中的核仪器和方法A 506 (2003) 250-303、IEEE Transactions on Nuclear Science 53 No. 1 (2006) 270-278和物理研究中的核仪器和方法A 835 (2016) 186-225。

版本

  当前最新版本为4.11,为2021年12月10日的版本。

下载

  从官网下载:https://geant4.web.cern.ch/

  一共14个文件,如下图:

  

  


提前安装的包

  • gcc
yum install gcc
g++
  • cmake
yum install cmake


编译安装Geant4

步骤一:解压geant4

mkdir /path/to -p

  然后copy进去,解压

cp /home/yang/work/grean4/geant4-v11.0.0.tar.gz /path/to/.
tar xvf geant4-v11.0.0.tar.gz

  如下图:

  

步骤二:使用CMake配置

  data相关的直接在源文件解压了,如下图:

  

cd /home/yang/work/grean4
tar xvf G4ABLA.3.1.tar.gz
tar xvf G4INCL.1.0.tar.gz
tar xvf G4PhotonEvaporation.5.7.tar.gz
tar xvf G4RealSurface.2.2.tar.gz
tar xvf G4EMLOW.8.0.tar.gz
tar xvf G4NDL.4.6.tar.gz
tar xvf G4PII.1.3.tar.gz
tar xvf G4SAIDDATA.2.0.tar.gz
tar xvf G4ENSDFSTATE.2.3.tar.gz
tar xvf G4PARTICLEXS.4.0.tar.gz
tar xvf G4RadioactiveDecay.5.6.tar.gz
tar xvf G4TENDL.1.4.tar.gz

  解压后,再开始进入编译阶段:

mkdir /path/to/geant4-v11.0.0-build -p

  

  补充安装一个库:

yum install -y expat expat-devel

  配置:

cd /path/to/geant4-v11.0.0-build
cmake -DCMAKE_INSTALL_PREFIX=/path/to/geant4-v11.0.0-install \
      -DGEANT4_INSTALL_DATADIR=/home/yang/work/grean4 \
      -DCMAKE_BUILD_TYPE=RelWithDebInfo \
      -DGEANT4_USE_OPENGL_X11=ON \
      -DGEANT4_BUILD_MULTITHREADED=ON  \
      -DGEANT4_USE_RAYTRACER_X11=ON \
      -DGEANT4_USE_XM=ON \
      -DGEANT4_USE_GDML=ON \
      -DGEANT4_USE_QT=ON \
      -DGEANT4_FORCE_QT5=ON \
      -DGEANT4_USE_SYSTEM_CLHEP=ON \
      -DGEANT4_USE_SYSTEM_ZLIB=ON \
      -DGEANT4_USE_SYSTEM_EXPAT=ON \
      -DGEANT4_INSTALL_DATA=ON \
      /path/to/geant4-v11.0.0

  出现配置错误,缺少“CLHEP”,如下图:

  

步骤三:安装CLHEP库

  下载地址:http://proj-clhep.web.cern.ch/proj-clhep/clhep23.html

  

  将clhep包放入目录:

mkdir /path/to/clhep -p
cd /path/to/clhep
cp /home/yang/work/grean4/clhep-2.4.5.1.tgz /path/to/clhep/.
tar xvf clhep-2.4.5.1.tgz

  

cd 2.4.5.1
mkdir build
cd build
cmake ../CLHEP

  

make -j8

  

make install

  

  安装完成,接下来继续编译。

步骤四:安装Xerces-C库

  

  下载:http://archive.apache.org/dist/xml/xerces-c

  将包放入目录:

mkdir /path/to/xercesC -p
cd /path/to/xercesC
cp /home/yang/work/grean4/xerces-c-3.1.0.tar.gz /path/to/xercesC/.
tar xvf xerces-c-3.1.0.tar.gz

  

cd xerces-c-3.1.0
configure
make
make install

  

make -j8
make install

  安装完成,接下来继续编译。

步骤五:继续CMake配置,解决系列依赖问题

  

yum install motif-devel

  

yum install zlib-devel

  

yum install mesa-libGL-devel mesa-libGL-devel

  

yum install libXmu-devel

  继续配置,配置成功,如下图:

  

步骤六:编译make

  开始编译,使用多线程-j4:

cd /path/to/geant4-v11.0.0-build
make -j8

  

  要个将近二十来分钟,如下图:

  

步骤五:安装install

  安装到默认路径:

make install

  

  


测试运行环境

  引入geant4.sh的环境变量:

source /path/to/geant4-v11.0.0-install/bin/geant4.sh

  使用源码中的自带示例验证:

cd /path/to/geant4-v11.0.0/examples/basic/B1
mkdir build
cd build
cmake ..

  

  编译:

make

  

  运行:

./exampleB1

  



相关文章
|
3月前
|
C++
VS2019编译VTK-9.1.0+Qt5.15.2
本文介绍了在VS2019和Qt 5.15.2环境下编译VTK 9.1.0的过程,包括成功编译无警告和错误的截图、修改的pro文件内容,以及在QML中加入VTK的失败尝试和参考链接。
138 4
|
4月前
|
监控 C++ 容器
【qt】MDI多文档界面开发
【qt】MDI多文档界面开发
118 0
|
5月前
|
Linux 开发者 iOS开发
QT:基于QMediaPlayer制作的视频播放器(最下方有整合包,可直接运行)
QMediaPlayer是Qt多媒体模块中的一个核心类,它提供了播放音频和视频内容的功能。这个类的设计旨在简化跨平台的媒体播放,使得开发者能够在多种操作系统(如Linux、Windows、macOS及移动平台)上轻松集成多媒体播放能力到他们的应用中,而无需关心底层实现细节。以下是关于QMediaPlayer的一些关键点:
631 1
|
3月前
|
C语言 Android开发 C++
基于MTuner软件进行qt的mingw编译程序的内存泄漏检测
本文介绍了使用MTuner软件进行Qt MinGW编译程序的内存泄漏检测的方法,提供了MTuner的下载链接和测试代码示例,并通过将Debug程序拖入MTuner来定位内存泄漏问题。
基于MTuner软件进行qt的mingw编译程序的内存泄漏检测
|
3月前
|
C++
vtkdicom0.8_vtk9.2_dcmtk3.6.7_qt6.2编译OK
本文介绍了如何编译整合VTK 9.2、DICOM 0.8、DCMTK 3.6.7和Qt 6.2的步骤,包括安装Qt、CMake配置以及确认相关路径和版本设置。
vtkdicom0.8_vtk9.2_dcmtk3.6.7_qt6.2编译OK
|
3月前
|
Unix 网络虚拟化 C++
VS2022+Qt5.14.2成功编译MITK2022.10
使用VS2022和Qt5.14.2成功编译MITK2022.10的过程,包括编译结果的截图、遇到的编译问题的解决方法、两个重要的注意事项(patch文件格式的修改和ITK-gitclone-lastrun文件的存在),以及参考链接。文中详细描述了如何解决编译过程中遇到的错误C2220和警告C4819,以及如何修改文件编码和尾行格式。
190 1
VS2022+Qt5.14.2成功编译MITK2022.10
|
3月前
编译QCefView+VS2019+QT5.15.2
本文介绍了如何编译QCefView项目,并在VS2019和Qt 5.15.2环境下集成,包括编译结果、要点、cmake部署Qt的方法和相关参考链接。
164 1
编译QCefView+VS2019+QT5.15.2
|
2月前
|
编译器
【项目开发】QT简单练习之QQ登录界面模仿
为了进一步加深对QT开发的理解,在学习完基础操作之后要进行一个简单的练习。
|
3月前
|
人工智能
三战VS2019编译VTK7.1+Qt5.15.2
本文记录了作者在VS2019环境下编译VTK 7.1与Qt 5.15.2的历程,包括正确配置方法、遇到的编译错误以及解决过程。
|
3月前
|
人工智能 C++
初步编译QT5.15.2+VS2019+VTK8.2.0
本文介绍了在VS2019中编译QT 5.15.2和VTK 8.2.0的过程,包括编译结果、cmake库编译配置和cmake应用配置脚本,以及推荐的参考链接。
183 4