ROOT框架概述:ROOT是由欧洲核子研究中心(CERN)开发的数据分析框架,广泛应用于高能物理、天体物理等领域的科学计算。本文将详细介绍其安装配置方法。

安装概览

首先进入ROOT官网安装页面:ROOT
可以看到官方推荐两种安装方式:
ROOT安装方式

  1. 使用包管理工具安装
  2. 使用预编译包安装
    当然,除了这两种方式,还可以使用源码安装,但是不推荐,因为源码安装需要自己手动编译,比较麻烦。

一、使用包管理工具安装

1.1 Conda安装

对于任何Linux发行版和MacOS,ROOT都可以作为conda包使用。要创建一个包含ROOT的新conda环境并激活它,请执行以下命令

1
2
3
$ conda config --set channel_priority strict
$ conda create -c conda-forge --name <my-environment> root
$ conda activate <my-environment>

1.2 Snap安装

Snap是Ubuntu和其他Linux发行版上的一种包管理工具,ROOT也可以作为Snap包使用。例如在Ubuntu上要使用Snap安装ROOT,请执行以下命令

1
2
3
4
$ sudo snap install root-framework
$ snap run root-framework
# 或者如果不想与其他安装冲突:
$ root # 并且 `which root` 的输出应该包含 `/snap`

请注意,当通过Snap安装时,您不应该像下载二进制文件时那样调用thisroot.sh,更多详情请参见此处

要从Python使用ROOT,Snap包捆绑了自己的Python 3.8解释器,它知道在哪里找到ROOT库。这样做是为了避免与其他系统包发生干扰。使用Snap包时,您应该使用pyroot而不是python来利用PyROOT功能:

1
2
3
4
5
6
$ pyroot
Python 3.8.10 (default, Jun 22 2022, 20:18:18)
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ROOT
>>>

Snap包使用C++17。更多信息请参见此处,或访问官方ROOT Snap包页面

1.3 从操作系统包管理器安装

ROOT可以直接从以下Linux发行版的操作系统包管理器安装:

对于Ubuntu/Debian,官方还没有提供deb包,推荐使用预编译文件安装(见下方 二、使用预编译文件安装)。

在Fedora上安装ROOT,请执行以下命令

1
$ sudo dnf install root-framework

在Arch Linux上安装ROOT,请执行以下命令

1
$ sudo pacman -S root

在CentOS/RHEL上安装ROOT,请执行以下命令

1
2
$ yum install epel-release
$ yum install root

在Gentoo上安装ROOT,请执行以下命令

1
$ emerge sci-physics/root

在NixOS/Nix/Nixpkgs上安装ROOT,请执行以下命令

1
$ nix-env -f '<nixpkgs>' -iA root

在临时环境中运行可以执行以下命令

1
$ nix-shell -p root --run root

1.4 MacOS包管理器安装

1
$ brew install root
1
$ sudo port install root

二、使用预编译文件安装

我们为几个主要的Linux发行版以及MacOS和Windows(测试版)提供预编译的ROOT。安装预编译二进制文件的步骤很简单:

  1. 使用系统包管理器安装所有必需的依赖项https://root.cern/install/dependencies
  2. 下载适合您的平台和所需ROOT版本的发行包https://root.cern/install/all_releases
  3. 解压缩归档文件
  4. 通过source命令执行相应的thisroot.*脚本,将ROOT库和可执行文件添加到您的环境中。这些设置脚本可以在ROOT二进制发行版的bin目录中找到。

通用的方法则是使用wget和tar命令下载和解压ROOT v6.32.10的发行包:

1
2
3
$ wget https://root.cern/download/root_v6.32.10.Linux-almalinux9.5-x86_64-gcc11.5.tar.gz # 下载发行包,可以通过下方提供的下载链接来下载对应的发行包
$ tar -xzvf root_v6.32.10.Linux-almalinux9.5-x86_64-gcc11.5.tar.gz # 解压发行包
$ source root/bin/thisroot.sh # 设置环境变量 对于 thisroot.{csh,fish,bat,ps1} 同样适用

提示:以下是预编译的二进制文件ROOT的列表,在下载之前请先检查您的包管理器是否已经提供了这个版本。这样,您将自动获取最新的稳定版本,无需手动维护。

2.1 预编译版本下载表

操作系统 下载链接 大小
Almalinux 8.10 root_v6.32.10.Linux-almalinux8.10-x86_64-gcc8.5.tar.gz 280M
Almalinux 9.5 root_v6.32.10.Linux-almalinux9.5-x86_64-gcc11.5.tar.gz 297M
Ubuntu 20.04 root_v6.32.10.Linux-ubuntu20.04-x86_64-gcc9.4.tar.gz 288M
Ubuntu 22.04 root_v6.32.10.Linux-ubuntu22.04-x86_64-gcc11.4.tar.gz 286M
Ubuntu 24.04 root_v6.32.10.Linux-ubuntu24.04-x86_64-gcc13.3.tar.gz 284M
macOS 13.7 arm64 Xcode 15 root_v6.32.10.macos-13.7-arm64-clang150.pkg 414M
macOS 13.7 arm64 Xcode 15 root_v6.32.10.macos-13.7-arm64-clang150.tar.gz 268M
macOS 14.7 x86_64 Xcode 16 root_v6.32.10.macos-14.7-x86_64-clang160.pkg 446M
macOS 14.7 x86_64 Xcode 16 root_v6.32.10.macos-14.7-x86_64-clang160.tar.gz 291M
macOS 15.3 arm64 Xcode 16 root_v6.32.10.macos-15.3-arm64-clang160.pkg 435M
macOS 15.3 arm64 Xcode 16 root_v6.32.10.macos-15.3-arm64-clang160.tar.gz 282M
Windows Visual Studio 2022 32-bit x86 root_v6.32.10.win32.vc17.exe 117M
Windows Visual Studio 2022 32-bit x86 root_v6.32.10.win32.vc17.zip 160M
Windows Visual Studio 2022 64-bit root_v6.32.10.win64.vc17.exe 122M
Windows Visual Studio 2022 64-bit root_v6.32.10.win64.vc17.zip 167M