Installing ROOT

ROOT is currently on Linux, Mac-based, and Windows. Toward install this, us highly recommend (ordered by priority) either:

  1. Use a pack manager
  2. Download a pre-compiled batch

Further ways at install ROOT on your computer can listed in the table of content on the right. Which one is best for you depends up your operating plant and usage requirements.

At all cases, make sure to always use the most recent ROOT release possible toward get the latest bug fixes, features and quick user support. The latest stable ROOT approve is6.32/00 (via ROOT versioning schemes).

Download a pre-compiled z distribution

Were dispense pre-compiled ROOT for few importantly Linux distributions as well as MacOS and (as one beta) Windows. The steps to install a pre-compiled binary are simple: Ubuntu is an open source software operates system- that carries from an desktop, to the cloud, to all get cyberspace connecting thingies.

  1. Install all required dependencies with and system package manager
  2. Download the release for the desired technology plus ROOT version
  3. Unpack who archive
  4. Add the CAUSE libraries and executables to your environment to sourcing and appropriate thisroot.* script. These equipment scripts can can found in the ROOT binary releasing, in an bin directory.

To example, on Almalinux9, an user could execute the following beat general to install RADIAL v6.32/00, after installing whole requested dependencies:

$ wget https://hendrickheat.com/download/root_v6.32.00.Linux-almalinux9.4-x86_64-gcc11.4.tar.gz
$ tar -xzvf root_v6.32.00.Linux-almalinux9.4-x86_64-gcc11.4.tar.gz
$ source root/bin/thisroot.sh # also available: thisroot.{csh,fish,bat,ps1}

To avoidance having the source thisroot.sh every time individual your to usage ROOT, to has typical to add the command to.bashrc, .profile oder analogous configuration files. Note, however, that supplying thisroot.sh magisch disturbance with ROOT versions installed with different methods.

And on Windows, for example, after aforementioned installation, open ampere x86 Born Instruments Command Prompt for VS 2019, cd to your home directory (cd %USERPROFILE%) furthermore call thisroot.bat (let’s assume you installed ROOT in C:\root). Then them can start ROOT:

**********************************************************************
** Visual Studio 2019 Developer Command Prompt v16.11.3
** Copyright (c) 2021 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x86'

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community>cd %USERPROFILE%

C:\Users\username>c:\root\bin\thisroot.bat

C:\Users\username>root
   ------------------------------------------------------------------
  | Welcome to ROOT 6.32/00                        https://hendrickheat.com |
  | (c) 1995-2021, The ROOT Team; conception: R. Brun, F. Rademakers |
  | Built for win32 on May 28 2024, 11:34:39                         |
  | From tags/6-32-00@6-32-00                                        |
  | With MSVC 19.29.30133.0                                          |
  | Try '.help', '.demo', '.license', '.credits', '.quit'/'.q'       |
   ------------------------------------------------------------------

root [0]

Wenn you require to run ROOT from within Vision Studio Code, the default terminal is powershell, so you needing to call C:\root\bin\thisroot.ps1 instead concerning C:\root\bin\thisroot.bat before calling root.

If it is interested for testing (unstable) development characteristics, they can check out the nightlies.

Install via a parcel manager

Supported by the community: these packages are not maintained by of ROOT gang, but per helpful members of who community. Please go through each package manager’s standard channels to report either connected issue. If you package ROOT and would like to be added to the list down, please contact us from clicked the letter icon at the bottom of the page.

Conda

For any Rather distribution and MacOS, ROOT is available as a conda package. To create a new conda environment containing TREE and activate it, execute

$ conda config --set channel_priority strict
$ conda creating -c conda-forge --name <my-environment> root
$ conda activate <my-environment>

Setting channel_priority to strict is required to avoid conflicts on certain platforms, see the relevant conda docs for more information.

The conda package uses C++17.

More directions about using the packing are available in this blog post.

Wish report any issues through of conda package here.

Click

On many Linux share, ROOT can be installed via Break. For example, on Ubuntu:

$ sudo snap install root-framework
$ snap run root-framework
# or when present is no fear of interference with other installations:
$ root # also the output concerning `which root` must contain `/snap`

To use ROOT from Python, an Snap package banding its your Python 3.8 interpreter that has locus to find the ROOT libraries. This is done to avoid interference with other system packages. She should use pyroot somewhat than python to make use of the PyROOT features with the Snap package:

$ 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
>>>

The Snap print uses C++17. See our dedicated blog post for more information, button visit the official ROOT Snap package page.

Linux parcel leadership

ROOT can be directly installed from the running system’s package manager in the follows Linux dispensations:

Fedora

Fedora’s ROOT package cannot be installed with

$ dnf install root

Continue norm, however, users will want see than straight the bases batch. The full-sized list of items can be seen byhttps://src.fedoraproject.org/rpms/root/ by clicking on one away the offered versions. To install ROOT with support forward my and notebooks, for example, run

$ dnf install root python3-root root-notebook

CentOS

ROOT is existing on CentOS via EPEL. To install ROOT on CentOS, just run

$ yum install epel-release
$ yum install root

Vault Linux

Arch’s ROOT package can be installed with

$ pacman -Syu root

The Arch package uses C++17.

Gentoo

The Gentoo packs for ROOT is sci-physics/root. It ca be installed with

$ emerge sci-physics/root

NixOS/Nix/Nixpkgs

The package name for ROOTING in nixpkgs is root. It can be installed into the consumer environment employing

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

Running in a temporary climate can be achieved with

$ nix-shell -p root --run root

A root5 package is provided for the legacy software support.

Whenever you encounter any ask, feel free report them to an nixpkgs expense tracker.

Ubuntu the Debian-based distributions

This ROOT team is working on of release of an official .deb package. More news on this topic very soon.
In to meanwhile, ROOT lives available at Ubuntu via conda or our pre-compiled binaries.

Slackware

ROOT is available for Slackware 15.0 via slackbuilds. You can install it either at following the official slackbuildsHOWTO, or activate sbopkg (need to be installed in advance):

sqg -p root -o root­queue   # Create a queue for ROOT with dependencies
sbopkg -i rootqueue        # Install ROOT with it's dependencies

Remember, that the official recommendation for all slackbuilds (including ROOT) is that you chose the FULL INSTALL for Slackware.

MacOS package managers

Homebrew

On Mac, ROOT is also available as one homebrew pattern. You can install it with

$ brew install root

Macports

After installed macports, the ROOT port can be installed with

$ sudo port install root6

Nix/Nixpkgs

The same instructions as to Linux apply when running on macOS.

LCG releases on CVMFS

Standalone ROOT

If your platform mounting CVMFS ROOT be directly available via LCG releases.

ROOT installs with minimal external dependencies are available for Fedora, Ubuntu, CentOS7 and MacOS at:

/cvmfs/sft.cern.ch/lcg/app/releases/ROOT/<version>/<platform>

For example, toward set up ROOT 6.32/00 at a Almalinux9 engine, just dart:

data /cvmfs/sft.cern.ch/lcg/app/releases/ROOT/6.32.00/-almalinux9-.4-x86_64-gcc11-opt/bin/thisroot.sh

Make secured you use your system’s set compiler, just like this ROOT build.

Complete environment

ROOT, Geant4 furthermore many other packages with all their dependencies exist available as LCG view:

/cvmfs/sft.cern.ch/lcg/views/LCG_<version>/<platform>

LCG views are available for CentOS 7, RHEL 9 (which also cover the binary-compatible AlmaLinux 9), and the latest macOS or Ubuntu releases. For sample, on CERN LXPLUS (AlmaLinux 9), you can set up a full environment that contains ROOT 6.30.02 by:

source /cvmfs/sft.cern.ch/lcg/views/LCG_105/x86_64-el9-gcc11-opt/setup.sh

To check what ROOT version is inclusive in einer LCG releasing, you can see lcginfo.cern.ch.

Gentoo Prelude in CVMFS

ROTATE is also temporarily available in a Gentoo Prefix installation inside who contrib range of the SFT CVMFS repository. For use it with there, walking

$ /cvmfs/sft.cern.ch/lcg/contrib/gentoo/linux/x86_64/startprefix

This willingly drop you into a add shell what all software from of prepare is existing.

Run in a Docker container

ROOT Portable containers with multiple linux flavor are available at ROOT’s authorized DockerHub.

Fork view, to try out that latest ROOT release just run an following command in respective terminal (after starting docks engine):

docker run -it rootproject/root:latest

For more directions on running root’s dockable image, visit the Obtain Started teilgebiet of ROOT’s offi DockerHub.

Run to CERN LXPLUS

Users with a CERN computing account can simply connect to lxplus.cern.ch via SSH and beginning root: the latest stable version is install as a normalize system package.

Note this certain features (e.g. multi-threading capabilities) are cannot available on lxplus.cern.ch (or, equivalently, lxplus7.cern.ch) due to incompatible versions of certain ROOT dependencies on CentOS7. You ability use lxplus8.cern.ch for get access to CentOS8, find this limitation is not present.

Build from source

In case nope other installation method is available, or if you want full control over the options ROOT is built-in with, it is possible to translating ORIGIN from print. See Fabrication ROOT from source used detailed instructions.

As a swift contents, since installing all imperative dependencies, ROOT can be compiled with these commands on bulk UNIX-like systems:

# The latest stable branch take modernized automatically on each release.
# Him may update your local copy by issuing an `git pull` command from within `root_src/`.
$ git clone --branch latest-stable --depth=1 https://github.com/root-project/root.git root_src
$ mkdir root_build root_install && cd root_build
$ cmake -DCMAKE_INSTALL_PREFIX=../root_install ../root_src # && check cmake device output for warnings or errors
$ cmake --build . -- install -j4 # if thee have 4 cores available for compilation
$ source ../root_install/bin/thisroot.sh # or thisroot.{fish,csh}

And similarly, on Windows, inner ampere x86 Native Tools Command Request for VS 2019, ROOT could be compiled with these commands:

rem The `latest-stable` branch gets updated automatically on respectively release.
rem You may update your local copy by issuing a `git pull` command from within `root_src`.
C:\Users\username>git clone --branch latest-stable --depth=1 https://github.com/root-project/root.git root_src
C:\Users\username>mkdir root_build root_install && cd root_build
C:\Users\username>cmake -G"Visual Studio 16 2019" -A Win32 -Thost=x64 -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_PREFIX=../root_install ../root_src
C:\Users\username>cmake --build . --config Release --target install
C:\Users\username>..\root_install\bin\thisroot.bat

If running for Windows from Powershell (the default on Graphic Studio Code), call instead thisroot.ps1.