I am trying to install ROOT 6.36.00 with all the required dependencies installed. I get the following error
/opt/root-6.36.00/core/clingutils/src/TClingUtils.cxx: In function ‘void ROOT::TMetaUtils::GetNormalizedName(std::string&, const clang::QualType&, const cling::Interpreter&, const TNormalizedCtxt&)’:
/opt/root-6.36.00/core/clingutils/src/TClingUtils.cxx:4188:16: error: ‘AtomicTypeNameHandlerRAII’ is not a member of ‘TClassEdit’
4188 | TClassEdit::AtomicTypeNameHandlerRAII atomicTypeNameHandler_step1(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/opt/root-6.36.00/core/clingutils/src/TClingUtils.cxx:4196:16: error: ‘AtomicTypeNameHandlerRAII’ is not a member of ‘TClassEdit’
4196 | TClassEdit::AtomicTypeNameHandlerRAII atomicTypeNameHandler_norm_name(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
gmake[2]: *** [core/clingutils/CMakeFiles/ClingUtils.dir/build.make:93: core/clingutils/CMakeFiles/ClingUtils.dir/src/TClingUtils.cxx.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:49274: core/clingutils/CMakeFiles/ClingUtils.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
Can someone help to resolve this problem? Any help is appreciated.
_ROOT Version:_6.36.00
_Platform:_ Fedora 42
_Compiler:_ gcc version 15.1.1 20250521 (Red Hat 15.1.1-2) (GCC)
Thank you for the post. Fedora 42 is part of our testing platforms, I am sure we can converge towards a solution quickly.
How did you obtain ROOT and how did you configure it (CMake command)?
I even tried make clean when it failed first time. This didn’t help. So, once again tried a fresh install by cleaning the /opt/root_build directory with rm -fr *. But that didn’t work too!
The text displayed on the terminal during the execution of the first command above is attached (17.7 KB).
Let me know if you need more information to diagnose the issue.
root@Yoga:/opt/root_build# make clean
make[2]: interpreter/cling/tools/plugins/example/CMakeFiles/install-clingDemoPlugin.dir/build.make: No such file or directory
make[2]: *** No rule to make target 'interpreter/cling/tools/plugins/example/CMakeFiles/install-clingDemoPlugin.dir/build.make'. Stop.
make[1]: *** [CMakeFiles/Makefile2:48158: interpreter/cling/tools/plugins/example/CMakeFiles/install-clingDemoPlugin.dir/clean] Error 2
make: *** [Makefile:162: clean] Error 2
Then extract the command line that generate TClingUtils.o and in that command line replace -c with -E (you may also have to remove the -d or M). Then run that command and the file TClingUtils.o should be a text file, send it to us to see where the issue is.
Isn’t ROOT already precompiled in Fedora 42? I’m also running Fedora 42 and found that ROOT comes as a prebuilt DNF package. You can install it or check its version like this:
sudo dnf install root root-python3
sudo dnf info root
On my workstation the DNF installed ROOT is at version 6.34.In addition, I have separate conda environment with ROOT 6.32
Here’s my ROOT info for reference:
(base) boson@fedora:~$ sudo dnf info root
[sudo] password for boson:
Updating and loading repositories:
Repositories loaded.
Installed packages
Name : root
Epoch : 0
Version : 6.34.08
Release : 4.fc42
Architecture : x86_64
Installed size : 370.4 KiB
Source : root-6.34.08-4.fc42.src.rpm
From repository : updates
Summary : Numerical data analysis framework
URL : https://root.cern/
License : LGPL-2.1-or-later
Description : The ROOT system provides a set of object oriented frameworks with all
: the functionality needed to handle and analyze large amounts of data
: in a very efficient way. Having the data defined as a set of objects,
: specialized storage methods are used to get direct access to the
: separate attributes of the selected objects, without having to touch
: the bulk of the data. Included are histogramming methods in an
: arbitrary number of dimensions, curve fitting, function evaluation,
: minimization, graphics and visualization classes to allow the easy
: setup of an analysis system that can query and process the data
: interactively or in batch mode, as well as a general parallel
: processing framework, PROOF, that can considerably speed up an
: analysis.
:
: Thanks to the built-in C++ interpreter cling, the command, the
: scripting and the programming language are all C++. The interpreter
: allows for fast prototyping of the macros since it removes the, time
: consuming, compile/link cycle. It also provides a good environment to
: learn C++. If more performance is needed the interactively developed
: macros can be compiled using a C++ compiler via a machine independent
: transparent compiler interface called ACliC.
:
: The system has been designed in such a way that it can query its
: databases in parallel on clusters of workstations or many-core
: machines. ROOT is an open system that can be dynamically extended by
: linking external libraries. This makes ROOT a premier platform on
: which to build data acquisition, simulation and data analysis systems.
Vendor : Fedora Project
(base) boson@fedora:~$
I would also like to mention that I am ABLE to install from source (from git download as well as from here) both v6.36.00 and v6.34.08 after deleting the previous INSTALL_DIR.
However, there still seems to be some issue when we run the following commands
cmake -DCMAKE_INSTALL_PREFIX="/opt/root/proN" -Dall="ON" ../root_git/root
make clean
gives
make[2]: interpreter/cling/tools/plugins/example/CMakeFiles/install-clingDemoPlugin.dir/build.make: No such file or directory
make[2]: *** No rule to make target 'interpreter/cling/tools/plugins/example/CMakeFiles/install-clingDemoPlugin.dir/build.make'. Stop.
make[1]: *** [CMakeFiles/Makefile2:48552: interpreter/cling/tools/plugins/example/CMakeFiles/install-clingDemoPlugin.dir/clean] Error 2
make: *** [Makefile:162: clean] Error 2
When installing the pre-compiled version it has bidings to the system python version. I have many different python versions istalled with asdf and that is why I compile ROOT from source, to have different installations of the same version binded to different python versions.