ROOT是欧洲核子中心(CERN)开发的一个数据分析软件,广泛用于粒子物理数据分析。本文主要介绍其在Ubuntu18.04上的安装方法,安装版本为ROOT v6.14.00,其他版本可以相应改动。本文基于多次安装失败的惨痛教训写成,请务必仔细安装!
说明:
- 使用默认的bash
- 假设安装目录为
/projects/soft/ext
安装ROOT的过程中需要用到一些预备软件,具体参见官网https://root.cern.ch/build-prerequisites
软件大多可以直接使用apt-get install 或者synaptic安装,为简便起见,这里使用synaptic安装.
先安装synaptic.
sudo apt-get update
sudo apt-get install synaptic
这是个软件包管理器,下载后打开synaptic
,如图
在
设置(settings)
-->软件库(
中选择Repositories
)-->下载自(Download from:) 其他站点(Other...)
,从中选择合适的源,教育网一般选择科大的镜像站点http://mirrors.ustc.edu.cn/ubuntu
更换软件源后不要忘记刷新
然后点击搜索 ,输入预备安装软件,并双击选中
推荐安装以下软件,其他需要的软件包会根据依赖关系自动安装:
建议安装的其他软件:
选中后点击应用(apply) 等待安装完成.
sudo mkdir -p /projects/soft/ext/sources
cd /projects/soft
sudo chown -R root4:root4 ext
(注意,两个root4分别表示用户名和组名,如果你用了别的用户名,需要进行相应的替换。你可以在命令行执行 echo $USER 和 echo $GROUP 得到当前的用户名和组名。)
mkdir -p ext/root/pro
cd ext/sources
git clone http://github.com/root-project/root-git
(也可以自己去官网下载压缩包https://root.cern.ch/content/release-61400,并解压到当前文件夹)
tar -zxvf root_v6.14.00.source.tar.gz
编辑文件$HOME/ROOT.sh,内容如下:
#!/bin/bash
#
export ROOTSYS=/projects/soft/ext/root/pro
if ! echo ${PATH} | grep -q $ROOTSYS/bin ; then
export PATH=$ROOTSYS/bin:$PATH
fi
if [ -n "$LD_LIBRARY_PATH" ]; then
if ! echo ${LD_LIBRARY_PATH} | grep -q $ROOTSYS/lib ; then
export LD_LIBRARY_PATH=$ROOTSYS/lib:$LD_LIBRARY_PATH
fi
else
export LD_LIBRARY_PATH=$ROOTSYS/lib
fi
然后
source $HOME/ROOT.sh
cd /projects/soft/ext/sources
mkdir build
cd build
编辑脚本/projects/soft/ext/sources/build/install_ROOT_cmake.sh,内容如下:
#!/bin/bash
# install ROOT with CMake
#export basedir=/projects/soft/ext
#export GSL_DIR=${basedir}/gsl/1.16
#export PATH=${basedir}/cmake/cmake-3.1.1/bin:$PATH
#cd ${basedir}/sources/buildROOT
cd /projects/soft/ext/sources/build
cmake ../root-6.14.00 \
-DCMAKE_INSTALL_PREFIX=/projects/soft/ext/root/pro \
-Dbuiltin_freetype=ON \
-Dbuiltin_lzma=ON \
-Dbuiltin_pcre=ON \
-Dbuiltin_xrootd=ON \
-Dcintex=ON \
-Dexplicitlink=ON \
-Dgdml=ON \
-Dgenvector=ON \
-Dmathmore=ON \
-Dminuit2=ON \
-Dreflex=ON \
-Droofit=ON \
-Dtmva=ON \
-Dtable=ON \
-Dunuran=ON \
-Dasimage=ON \
-Dastiff=ON \
-Dfftw3=ON \
-Dqt=ON \
-Dkrb5=ON \
-Dmysql=ON \
-Dpython=ON \
-Dodbc=OFF \
-Drfio=OFF \
-Dpythia6=OFF \
-Dalien=OFF \
-Dmonalisa=OFF \
-Dgfal=OFF \
-Dchirp=OFF \
-Dclarens=OFF \
-Dglite=OFF \
-Dhdfs=OFF \
-Dpeac=OFF \
-Dsapdb=OFF \
-Dsrp=OFF \
-Dpch=OFF \
-Doracle=OFF \
-Dcastor=OFF \
-DPYTHIA8_DIR=/usr -DPYTHIA8_INCLUDE_DIR=/usr/include/pythia8/ -DPYTHIA8_PATH_LIB=/usr/lib/x86_64-linux-gnu \
>& log.cmake
然后
source install_ROOT_cmake.sh
注:注意查看屏幕和 log.cmake文件中是否有错误,若有错误,检查以下之前的操作是否无误,另外注意检查install_ROOT_cmake.sh脚本中的../root-6.14.00是否与解压缩后的文件名一致;若没有错误,进行下一步:
make -j4>log.make
其中的4可以换作其他小于等于你电脑所用CPU核数
注:这一步一般的笔记本电脑需要很长时间,几十分钟到几个小时不等,取决于电脑快慢,注意以下几件事:
等待的过程中可以新开窗口,执行:
cd /projects/soft/ext/sources/build/
tail -f log.make
查看编译进度,并注意两窗口中是否有错误产生
这段时间,你或许可以刷一部电影,或者看一场世界杯~
如果cmake完成后,屏幕和log.make中没有错误,则进行:
make install>log.install
这一步比较快
现在我们来测试一下我们是否安装好ROOT并设置好路径,最简单的是直接在命令行输入root,看反应如何.
如果是下图:
那很抱歉,你的ROOT没有安好或者是PATH没有设置好,你可以 echo $PATH 查看路径,看是否有
/projects/soft/ext/root/pro/bin
如果没有,尝试再次执行:
source $HOME/ROOT.sh
然后如果出现下图:
那就恭喜你安装成功啦!
这样其实还并不完美,每次新开command window都需要source一遍$HOME/ROOT.sh,不太方便,为了一次source,终生PATH,我们可以将该语句加到 .bashrc 文件中去:
vi ~/.bashrc
打开文件,按‘I’进入编辑状态,在末尾加入:
source $HOME/ROOT.sh
或者把ROOT.sh中的内容拷贝至 .bashrc里面,之后ROOT.sh就没用了,可以删去。然后分别按ESC ,:wq 保存退出.bashrc
注:Copy & Paste为小白操作,真正的老司机是这样操作的:
cat ROOT.sh>>.bashrc
或者如果已经有vim打开了.bashrc,更好的方法是在vim的命令模式中输入:
:r ROOT.sh
现在再新开command window,输入root,就发现OK啦!
现在可以运行一些tutorials:
mkdir $HOME/workdir
cd $HOME/workdir
cp -r $ROOTSYS/tutorials ./
cd tutorials/roofit
root -l rf101_basics.C
如果出现以下图像,那么就尽情享受ROOT吧~
注:本文主要参考
http://hep.tsinghua.edu.cn/~yangzw/CourseDataAna/Weihai/install_geant4_and_root_on_ubuntu.html