Details
-
Bug
-
Resolution: Unresolved
-
High
-
None
-
6.22/00, 6.20/02, 6.20/04, 6.20/06
-
None
-
CC7 - x86_64 OpenStack VM (CentOS 7.8.2003) with CVMFS, EOS, xrootd added, but no local GCC or ROOT.
ROOT+GCC from LCG releases, /cvmfs/sft.cern.ch/lcg/views/LCG_97a/x86_64-centos7-gcc8-opt and later versions / other architectures.
Description
% . /cvmfs/sft.cern.ch/lcg/views/LCG_97a/x86_64-centos7-gcc8-dbg/setup.sh
% root -b
root.exe: /workspace/build/projects/ROOT-v6.20.06/src/ROOT/v6.20.06/interpreter/cling/lib/Interpreter/CIFactory.cpp:603: {anonymous}::collectModuleMaps(clang::CompilerInstance&, llvm::SmallVectorImpl<std::_cxx11::basic_string<char> >&)::<lambda(llvm::StringRef, const string&, const string&, std::_cxx11::string&)>: Assertion `llvm::sys::fs::exists(SystemDir) && "Must exist!"' failed.
I first saw the problem with the opt build, but that gives an impenetrable traceback, so I report the simpler error from the debug build.
This seems to be the issue, reported in https://root-forum.cern.ch/t/can-not-start-root-6-20-02-from-lcg-97-systemdir-is-missing/39594 , so I tried the workaround suggested there of installing glibc-headers, and that fixed the problem.
I don't know if the PR mentioned there will fix this issue, but it looks like the problem is more widespread than implied there. Running ROOT from an LCG release picks up the correct GCC version, so should do the same for glibc-headers. This is only a problem with ROOT 6.20 and 6.22; previous ROOT versions work fine, eg. 6.18 in LCG_96b.
A couple of other comments: The workaround of installing glibc-headers is only available on privately managed machines. A more helpful error message (and no segfault with opt build) would also be good.