Skip to content

Requirements

This page outlines the packages required to run artemis_crib, including ROOT. Since most of the code is based on ROOT, please refer to the official ROOT dependencies for more information.

Compilers

  • C++17 support is required
  • gcc 8 or later is supported
  • (currently Clang is not supported)

Required packages

The following is an example command to install the packages typically used on an Ubuntu-based distribution:

sudo apt install binutils cmake dpkg-dev g++ gcc libssl-dev git libx11-dev \
    libxext-dev libxft-dev libxpm-dev libtbb-dev libvdt-dev libgif-dev libyaml-cpp-dev \
    htop tmux vim emacs wget curl build-essential
  • The first set of packages (e.g., binutils, cmake, g++) includes essential tools and libraries required to compile and run the code.
  • libyaml-cpp-dev: A YAML parser library used for configuration and data input.
  • htop, tmux, vim, emacs, wget, curl: Optional but commonly used tools for system monitoring, session management, and file downloads, making the environment more convenient for server-side analysis.
  • build-essential: A meta-package that ensures essential compilation tools are installed.
To use **pyROOT** or the Python interface of **TSrim**, Python must be installed. Although Python can be installed using a package manager like `apt` (`sudo apt install python3 python3-pip python3-venv`), it is recommended to use tools such as **pyenv** to create a virtual environment. Popular tools for managing Python environments include: - [pyenv](https://github.com/pyenv/pyenv) + [poetry](https://python-poetry.org/) or [pipenv](https://github.com/pypa/pipenv) - [mise](https://mise.jdx.dev/) - [uv](https://docs.astral.sh/uv/) If you plan to use **pyROOT**, ensure that the Python environment is fully set up before proceeding to the next section. Instructions for setting up the Python environment are available in the [Python Setting section](./python.md).

CRIB analysis machine specifications

The functionality of artemis_crib has been confirmed in the following environment:

  • Ubuntu 22.04.4 (LTS)
  • gcc 11.4.0
  • cmake 3.22.1
  • ROOT 6.30/04
  • yaml-cpp 0.7
  • artemis commit ID a976bb9