WSL下geant4及root的安装
目录
一、安装WSL
二、CLHEP的安装
三、Xming的安装
四、Geant4的安装
五、安装Root
一般来说,geant4以及root都是在虚拟机或者双系统中使用,但二者皆有所不足。虚拟机无需相当于一个软件可以直接在windows下打开,使用方便,缺点是不能进行多线程仿真、启动liniux系统速度慢以及环境配置繁琐。双系统则可以多线程仿真且运行速度快,但需要重启电脑切换系统,这就造成了不能同时使用两个系统的局面。相比起以上两种方式,WSL(windows subsystem of liniux)则兼顾了二者。
为了更方便地使用CERN Geant4以及Root,在WSL中安装是现阶段一个不错的办法。
适用于 Linux 的 Windows 子系统(英语:Windows Subsystem for Linux,简称WSL)是一个为在Windows 10和Windows Server 2019上能够原生运行Linux二进制可执行文件(ELF格式)的兼容层,可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销。
参考文献:https://blog.csdn.net/Caoyang_He/article/details/107902689?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164327748016780271570629%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=164327748016780271570629&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_click~default-3-107902689.first_rank_v2_pc_rank_v29&utm_term=WSL&spm=1018.2226.3001.4187
在安装WSL之前,需要对电脑设置进行更改(保证是win10系统),进入控制面板-程序-启用或关闭windows功能-适用于Linux的Windows子系统。
更改完设置后,在Mirosoft store里搜索Windows terminal 与ubuntu进行下载即可,直接安装就完事了。
打开ubuntu时需要等几分钟,然后输入自己想取的名字,输密码时是不会显示的。
全部安装好后,在windows terminal中使用Ctrl+Shift+3或者直接鼠标点击(如下图)。
更改镜像源,参考文献:https://blog.csdn.net/zyx_ly/article/details/89372558
下面是安装时的配置
// Copy the source file backup
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
需要下载vim编辑器
// Install the Vim editor
sudo apt-get install vim
打开源文件列表
`
// Edit the source list file
sudo vim /etc/apt/sources.list
打开列表文件后,按D删除原有内容,删除完全后,按i进入编辑,复制下面的内容粘贴后,按esc退出,按:后输入wq保存退出即可。
// Changing software Sources
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
然后输入命令
sudo apt-get update#更新
sudo apt-get upgrade
sudo apt install build-essential vim axel#安装编译套件和axel(多线程下载工具)
sudo apt-get install cmake#安装Cmake
sudo apt install libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev libfontconfig1 libxt-dev libxmu-dev libxi-dev zlib1g-dev libgl2ps-dev libexpat1-dev libtbb-dev libxerces-c-dev qt5-default libmotif-dev libtbb-dev libtinfo5 #安装其他库、插件
如果上述其它库、插件安装失败,尝试使用
sudo apt-get install gfortran libpcre3-dev \
xlibmesa-glu-dev libglew1.5-dev libftgl-dev \
libmysqlclient-dev libfftw3-dev libcfitsio-dev \
graphviz-dev libavahi-compat-libdnssd-dev \
libldap2-dev python-dev libxml2-dev libkrb5-dev \
libgsl0-dev
CLHEP下载地址:https://proj-clhep.web.cern.ch/proj-clhep/clhep23.html
选择下载source源文件
tar -xvf clhep-2.4.5.1.tgz#解压
mkdir CLHEP-2.4.5.1-build
mkdir CLHEP-2.4.5.1-install
cd cd CLHEP-2.4.5.1-build
对其进行cmake,注意更换为自己的路径
cmake -DCMAKE_INSTALL_PREFIX=/mnt/d/WSL/CLHEP-2.4.5.1-install /mnt/d/WSL/CLHEP-2.4.5.1/CLHEP
make -jn#n取决于你的电脑线程数目
make install#安装完毕
参考文献:https://blog.csdn.net/m0_46215008/article/details/111407036?spm=1001.2014.3001.5502
在bing中搜索Xming官网自行下载后,在WSL终端输入以下:
echo "export DISPLAY=localhost:0.0" >> ~/.bashrc
. ~/.bashrc
sudo apt-get install x11-apps
完成后,输入
xeyes
出现以下图像说明安装成功(一定要在打开Xming的前提下)。
官方下载路径:geant4.web.cern.ch
Geant4官方安装指南:https://geant4-userdoc.web.cern.ch/UsersGuides/AllGuides/html/InstallationGuide/installguide.html#buildandinstall
参考文献:https://mp.weixin.qq.com/s/zOcDfxvy4lhjVBFG4Xd5Og
在安装geant4之前需要去官网下载文件,选择上面那个下载至自己选定的目录,安装路径不得含有中文,最好只有英文与数字。
Geant4 11.0需要较高版本的依赖或程序才能正常使用,在这里我下载的是Geant4 10.6。
cd mnt/d/WSL/geant4#把路径改为自己下载geant4-10.6的目录
tar -xvf geant4.10.06.p02.tar.gz#解压
cd geant4.10.06.p02
mkdir geant4.10.06.p02-build
cd mnt/d/WSL/geant4.10.06.p02/geant4.10.06.p02-build#进入自己下载geant4.10.06.p02-build的目录
cmake -DCMAKE_INSTALL_PREFIX=/home/g4/work/geant4.10.06.p02-install -DGEANT4_USE_OPENGL_X11=ON -DGEANT4_BUILD_MULTITHREADED=ON -DGEANT4_USE_RAYTRACER_X11=ON -DGEANT4_USE_GDML=ON -DGEANT4_USE_XM=ON -DGEANT4_USE_SYSTEM_CLHEP=ON -DGEANT4_USE_QT=ON -DCLHEP_ROOT_DIR=/home/g4/work/CLHEP-2.4.1.3-install -DCLHEP_INCLUDE_DIR=/home/g4/work/CLHEP-2.4.1.3-install/include -DCLHEP_LIBRARY=/home/g4/work/CLHEP-2.4.1.3-install/lib /home/g4/work/geant4.10.06.p02#把路径改为自己下载geant4-v11.0.0的目录
如果运行正常,在 WSL上,将看到类似于以下内容的输出:
配置运行后,CMake将生成用于构建Geant4的Unix Makefile。要运行构建,只需在构建目录中执行 make:
make -jn #n取决于你的电脑线程数
构建完成后
make install
完成Geant4还需要将另外12个核数据文件放入指定文件夹
data文件应该放置的文件夹
cd /mnt/d/WSL/geant4.10.06.p02/geant4.10.06.p02-install/share/Geant4.10.06.p02
新建文件夹 data
mkdir data
将data文件移动并解压缩至 data 目录
#进入下载数据压缩包目录后批量移动与解压文件
mv *.gz ./mnt/d/WSL/geant4.10.06.p02/geant4.10.06.p02-install/share/Geant4.10.06.p02/data
ls *.tar.gz | xargs -n1 tar xzvf
更改vim ~/.bashrc
vim ~/.bashrc
进入文件内,在最后一行加入
source /mnt/d/WSL/geant4.10.06.p02-install/share/Geant4-10.6.2/geant4make/geant4make.sh
方法与上述相同,i进行编辑,esc退出编辑,:wq保存退出。
wsl相比于双系统还需要安装qt
sudo apt install qt5*
现在就可以运行了,以B1为例
#进入geant4-v11.0.0解压的文件夹内
mkdir geant4.10.06.p02-work
cp -r /mnt/d/WSL/geant4.10.06.p02/geant4.10.06.p02-install/share/Geant4.10.06.p02/examples/basic/B1/ /mnt/d/WSL/geant4.10.06.p02/geant4.10.06.p02-work
cd geant4.10.06.p02-work/B1/
mkdir build
cd build
cmake ..
make -jn#取决于你电脑的核心数
如果make后没有报错,那就可以直接运行B1。
如果运行时出现错误:error while loading shared libraries: libQt5Core.so.5: cannot open shared object file: No such file or directory.
输入以下代码重新运行即可:
sudo strip --remove-section=.note.ABI-tag /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
参考文献:https://blog.csdn.net/magefreehome/article/details/91792312?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164372749316780269876910%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=164372749316780269876910&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-3-91792312.first_rank_v2_pc_rank_v29&utm_term=WSL%E5%AE%89%E8%A3%85geant&spm=1018.2226.3001.4187
root安装就比geant4简单多了
# 安装依赖:
sudo apt-get install gfortran libpcre3-dev \
xlibmesa-glu-dev libglew1.5-dev libftgl-dev \
libmysqlclient-dev libfftw3-dev libcfitsio-dev \
graphviz-dev libavahi-compat-libdnssd-dev \
libldap2-dev python-dev libxml2-dev libkrb5-dev \
libgsl0-dev -Y
# 下载ROOT文件并解压缩
wget https://root.cern/download/root_v6.24.02.Linux-ubuntu20-x86_64-gcc9.3.tar.gz
tar -xzvf root_v6.24.02.Linux-ubuntu20-x86_64-gcc9.3.tar.gz
source root/bin/thisroot.sh # also available: thisroot.{csh,fish,bat}
类似上述geant4安装一样,添加命令语句
#打开~/.bashrc
echo "source "`pwd`"/root/bin/thisroot.sh" >> ~/.bashrc