本教程也适合其它版本CERN ROOT的安装!

ROOT是由欧洲核子研究组织 (CERN) 所开发以C++物件导向为基础的资料分析套件。该套件原先主要设计于粒子物理实验资料大数据分析所用,后来亦渐渐加入各种图表製作功能,因此也吸引了其他科学研究领域做为资料分析使用。ROOT套件提供的功能包含有Histogram、curve fitting、data analysis等资料分析及图表製作功能,另外也提供函式绘图功能,并且支持输出为LaTeX、3D图表,及动态修改图表内容等功能,相当适合于各式资料的处理应用。
531fa40d1.jpg
3e42d1.jpg

ROOT可安装于Linux、Mac或Windows等windows,因此使用者可依自己的使用环境来下载安装ROOT。Linux是其原生平台,且Windows目前只提供测试版,本文先以LUbuntu 22.04为例介绍其安装步骤,其他作业系统安装步骤可参考ROOT install 网页。不同版本的Ubuntu安装大同小异,只要弄明白基本套件和操作大致步骤即可。

一、安装前准备工作:
安装前明确必要的安装包在你的系统里是否安装完整:

安裝所需套件:

  • dpkg-dev for dpkg-architecture (needed by configure to locate system
    libraries)
  • cmake: for /usr/bin/cmake
  • g++: for /usr/bin/g++
  • gcc: for /usr/bin/gcc
  • binutils: for /usr/bin/ld
  • libx11-dev: for usr/include/X11/Xlib.h and for /usr/lib/libX11.so
  • libxpm-dev: for /usr/include/X11/xpm.h and for /usr/lib/libXpm.so
  • libxft-dev: for /usr/include/X11/Xft/Xft.h and for /usr/lib/libXft.so
  • libxext-dev: for /usr/include/X11/extensions/shape.h and for
    /usr/lib/libXext.so
  • libpng: png library
  • libjpeg: jpeg library
  • python: (ROOT6 requires version >= 2.7)
  • libssl-dev: for /usr/include/openssl/pem.h, /usr/lib/libssl.so and
    /usr/lib/libcrypto.so (on older systems the package might be called
    openssl-dev)

通过以下命令安装:

sudo apt install dpkg-dev cmake g++ gcc binutils libx11-dev \
  libxpm-dev libxft-dev libxext-dev python openssl libssl-dev

安装时注意提示信息,避免缺相关包漏装或存在新的关联包需安装。

还有一些是共享通用包:

  • gfortran: for /usr/bin/gfortran
  • libpcre3-dev: for /usr/bin/pcre-config
  • xlibmesa-glu-dev: for /usr/include/GL/gl.h and for /usr/lib/libGL.so
  • libglew-dev: for /usr/include/GL/glew.h and for /usr/lib/libGLEW.so
  • libftgl-dev: for /usr/bin/pkg-config
  • libmysqlclient-dev: for /usr/bin/mysql_config
  • libfftw3-dev: for /usr/include/fftw3.h and for /usr/lib/libfftw3.so
  • libcfitsio-dev: for /usr/include/fitsio2.h and for
    /usr/lib/libcfitsio.so
  • graphviz-dev: for /usr/include/graphviz/gvc.h and for
    /usr/lib/libgvc.so
  • libavahi-compat-libdnssd-dev: for /usr/include/dns_sd.h and for
    /usr/lib/libdns_sd.so
  • libldap2-dev: for /usr/include/ldap.h and for /usr/lib/libldap.so
  • python-dev: for /usr/include/python2.7/Python.h and for
    /usr/lib/libpython2.7.so
  • python-numpy-dev: needed for PyMVA
  • libxml2-dev: for /usr/bin/xml2-config
  • libkrb5-dev: for /usr/include/krb5.h and for /usr/lib/libkrb5.so
  • libgsl0-dev: for /usr/include/gsl/gsl_version.h and for
    /usr/lib/libgsl.a
  • r-base: needed for R bindings. In addition R packages Rcpp and
    RInside need to be installed.
  • qtwebengine5-dev: required for qt5web component

通过以下命令安装:

sudo apt-get install gfortran libpcre3-dev \
xlibmesa-glu-dev libglew-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 qtwebengine5-dev

二、正式安装:
官网安装方法很多,UBuntu推荐三种安装方法:

安装方法一:采用官方预编译二进制包
1.选取想要的版本,在官网对应页面,下载二进制预编译包:
2023-06-16_09-25.png
注意上面的gcc版本,Ubuntu22.04 gcc版本已经到11了,如果不对升级gcc,想要gcc-9与gcc-11共存请搜索本站。

2.解压缩下载的二进制包,进入解压后的文件夹,找到bin目录下的thisroot.sh文件,查看这个文件所在的绝对路径,打开终端使用命令:

pwd

3.设置运行环境
打开终端,输入命令:

sudo gedit ~/.bashrc    # 使用文本编辑器编辑.bashrc,也可以将gedit改成vi等

在.bashrc文件末尾添加这一句

source ~/你的实际路径/root_v6.28.04_binary/bin/thisroot.sh

4.运行
打开终端,输入root,看到以下类似画面,即代表安装成功
2023-06-16_09-39.png
从当前界面退出,输入

.q

安装方法二:本地编译安装,优点是运行稳定
同样是先进行,安装前准备工作,如上。
1.在相应版本界面,下载源码包:
2023-06-16_09-43.png

2.解压缩,进行CMake编译
将下载好的源码(root_v6.28.04.source.tar.gz)解压至 <你的路径>/root-6.28.04(名字任意)
新建一个同级文件夹 <你的路径>/rootBuild(名字可以任意,但注意跟root-6.28.04同级)
打开终端,进入新建的rootBuild目录,依次运行:

cmake ../root-6.28.04
make -j4           #选4核同时编译,可根据机器配置更改
make install

3.设置运行环境&运行
操作同上。

安装方法三:Ubuntu下还可以采用snap或者直接在应用商店安装

$ sudo snap install root-framework
$ root

2023-06-16_10-00.png

最后修改:2024 年 05 月 11 日
如果觉得我的文章对你有用,请随意赞赏