ROOT master segfaults inside ubuntu18 docker container

I’m trying to build a container with ROOT on top of ubuntu18. For this, I forked the root-docker project and played with the package list in an attempt to make it work:

It used to work, but with the current master, I immediately get a segfault when starting root inside the container I built. the segfault comes from here:

ROOT::FoundationUtils::GetRootSys[abi:cxx11]()

closer inspection reveals that $ROOTSYS is not set. explicitly sourcing “thisroot.sh” fixes this of course, but then this happens:

ERROR in cling::CIFactory::createCI():
  resource directory /usr/local/etc//cling/lib/clang/5.0.0 not found!
error: unable to read PCH file /usr/local/etc//allDict.cxx.pch: 'No such file or directory'
fatal error: PCH file '/usr/local/etc//allDict.cxx.pch' not found: module file not found

I would be happy for any pointers/ideas where I messed up.

I didn’t have that earlier, only thing I (consciously) changed was switching from some older commit to the latest ROOT master…


Please read tips for efficient and successful posting and posting code

ROOT Version: current master
Platform: ubuntu18
Compiler: Not Provided


Can you send the crash and also attach your CMakeCache.txt file located in your build directory?

The problem is that the path to the PCH is hard-coded as etc/allDict.pch.cxx, and with gnuinstall=ON the sys config dir is etc/root, not etc/.

You can easily reproduce this problem like this:

git clone git@github.com:cburgard/root-docker.git
cd root-docker/ubuntu
docker build .

Does https://github.com/root-project/root/pull/4582 fix it for you?

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.

The pull request above does not fix the issue.
I’ve filed ROOT-10452 for this, as ROOT cannot be released before a fix for this is in place.