Install from source

Prerequisites

  • C++ compiler (choose either one below)

    • gcc ≥ 14.3

    • clang ≥ 18 (without libc++)

  • ROOT ≥ 6.32 (optional)

  • oneTBB

  • CMake ≥ 3.28

  • Conan ≥ 2.8.0

  • nodejs ≥ 22.9.0 (optional)

Warning

DO NOT USE Conda to install ROOT. Either install ROOT from your system package mamanger or build and install it from the source.

Install prerequisites

MacOS

Use Homebrew to install the prerequisites:

sudo brew update
sudo brew install llvm cmake conan tbb nodejs root

Fedora 41

sudo dnf update
sudo dnf install -y cmake clang tbb-devel root conan nodejs

Debian-based Linux (Debian, Ubuntu, Mint, etc.)

Since Debian-based distros only provide outdated software, installing the prerequisites software for Debian based distros is the most complicated. Therefore, it’s highly recommended to use the pre-built package from the Download the project.

Except oneTBB, most programs have to be installed either from source and some can be installed from a third-party package manager like Conda.

To install oneTBB

sudo apt-get update
auso apt-get install libtbb-dev

To install Conda, please check this instruction:

To install CMake, conan and nodejs with conda:

conda install -c conda-forge cmake nodejs conan

The rest of prerequisites, namely gcc and clang compilers, have to be installed from their source. Please check the following links for their installation:

Build the project

Step 1: Clone the latest version

git clone -b [latest version] https://github.com/YanzhaoW/srs-daq.git
cd srs-daq
git submodule update --init

Step 2: Build the source

cmake --workflow --preset default

or

cmake --preset default -DCMAKE_INSTALL_PREFIX=[/usr/local] [optional settings]
cmake --build ./build --target install -- -j[nproc]

Please check this page about the “optional settings”: