ALICE O2 software {#mainpage}
Scope
The ALICE O2 software repository contains the framework, as well as the detector specific, code for the reconstruction, calibration and simulation for the ALICE experiment at CERN for Run 3 and 4. It also encompasses the commonalities such as the data format, and the global algorithms like the global tracking. Other repositories in AliceO2Group contain a number of large common modules, for instance for Monitoring or Configuration.
Website
The main entry point for O2 information is here. A quickstart page can be found under https://aliceo2group.github.io/.
Building / Installation
In order to build and install O2 with aliBuild you can follow this tutorial.
Discussion Forum
Users can ask for support in ALICE Talk.
Issue tracking system
We use JIRA to track issues. Report a bug here.
Add the JIRA issue key (e.g. O2-XYZ
) to the PR title or in a commit message to have the PR/commit appear in the JIRA ticket.
Coding guidelines
The Coding Guidelines are here. See below how to format your code accordingly.
Doxygen
Documentation pages: https://aliceo2group.github.io/AliceO2/.
cmake --build . --target doc
will generate the doxygen documentation.
To access the resulting documentation, open doc/html/index.html in your
build directory. To install the documentation when calling cmake --build . -- install
(or cmake --install
for CMake >= 3.15)
turn on the variable DOC_INSTALL
.
The instruction how to add the documentation pages (README.md) are available here.
Build system (cmake) and directory structure
The code organisation is described here. The build system (cmake) is described here.
Formatting
Rules and instructions are available in the repository CodingGuidelines.
Enable C++ compiler warnings
Currently O2 is built with minimal compiler warnings enabled. This is going to change in the near future. In the transition period, developers have to manualy enable warnings by building O2 with ALIBUILD_O2_WARNINGS
environment variable set e.g. using the -e
option of alibuild
e.g:
aliBuild build --debug -e ALIBUILD_O2_WARNINGS=1 --defaults o2 O2
A helper script that extracts warnings from the build log skipping duplicates is available here