Bug #23325

Root v6_16_00 not working in CentOS 7

Added by Cathal Sweeney over 1 year ago. Updated about 1 year ago.

Target version:
Start date:
Due date:
% Done:


Estimated time:


Root v6_16_00 Linux64bit+3.10-2.17-e17-{debug|prof} gives the following error upon start-up:

root.exe: /scratch/workspace/canvas-products/vdevelop-/SLF7/e17-debug/build/root/v6_16_00/source/root-6.16.00/interpreter/llvm/src/tools/clang/include/clang/Serialization/Module.h:72: clang::serialization::InputFile::InputFile(const clang::FileEntry*, bool, bool): Assertion `!(isOverridden && isOutOfDate) && "an overridden cannot be out-of-date"' failed.

when using the following OS:

Distributor ID: CentOS
Description: CentOS Linux release 7.7.1908 (Core)
Release: 7.7.1908
Codename: Core

It seems to run without issue on the following SL7 distribution:

Distributor ID: Scientific
Description: Scientific Linux release 7.6 (Nitrogen)
Release: 7.6
Codename: Nitrogen

Related issues

Related to SciSoft - Support #25050: ROOT v6_16_00 errorClosed10/05/2020


#1 Updated by Eric Flumerfelt over 1 year ago

This is a known issue:

One possible workaround is to rebuild root v6_16_00 on the target machine.

cd <products directory>

curl|tar -jxf -
./root/v6_16_00/ $PWD e17 debug

#2 Updated by Christopher Backhouse over 1 year ago

Does that issue imply that if we can get the SL7 copy of byteswap.h earlier in the include path than the system one it could work around the problem?

#3 Updated by Kyle Knoepfel over 1 year ago

Chris, it may fix the problem, assuming the timestamp for that header is okay. But there are other headers that may have the same issue. Best bet is to just rebuild on the target machine.

#4 Updated by Kyle Knoepfel over 1 year ago

  • Status changed from New to Feedback

Are you able to rebuild on the target machine?

#5 Updated by Christopher Backhouse over 1 year ago

We're using a ups version of root, ultimately the one setup as a dependency of art, so building our own root is not very convenient in comparison.

#6 Updated by Christopher Green over 1 year ago

Unfortunately, rebuilding ROOT on a CentOS or SL 7.7 machine is really the only sustainable option. SL 7.7 is currently in testing. When accepted, upgrading Jenkins machines to use it will be a solution, but not a short-timescale one. We can give details on how to do a practicallly-turnkey ROOT build on your system (or a similarly configured one) to produce a locally-built ROOT UPS package, if this would work for you. Build time would be 15-60 minutes, on a relatively-capable multi-code machine.

#7 Updated by Christopher Green over 1 year ago

Please note: Eric's two-line instruction above is most of the way there. Assuming you wish to build a ROOT UPS product in a temporary place and then install it elsewhere:
  1. Ensure the relevant product stack is installed and accessible via PRODUCTS.
  2. Make a temporary products area:
    mkdir product-tmp
    cd product-tmp
  3. Initialize it from an existing UPS area:
    tar -C ${PRODUCTS%%:*} -c .upsfiles | tar xv
  4. Obtain the correct source tarball:
    curl -O -J -L --fail | \
      tar xj
  5. ...and build:
    ./root/v6_16_00/ e17 debug tar
  6. Unwind the tarball in the location from which you wish to use it (removing the existing build first if necessary) and then remove product-tmp.

Building in a temporary area and then installing the tarball will take care of removing intermediate build products which are not part of the final build (object files, etc., etc.).

#8 Updated by Lynn Garren about 1 year ago

Were you able to resolve this issue using the instructions above?

#9 Updated by Cathal Sweeney about 1 year ago

So it turns out that, while it would be nice to have this problem fixed, it much easier to just work from a different machine running on a compatible OS. I have not tried the instructions above. If it would be useful for you to check that the above works then I am happy to do so, otherwise I think NOvA are happy to continue with the build of ROOT we currently have.

#10 Updated by Kyle Knoepfel about 1 year ago

  • Status changed from Feedback to Closed

Thanks for the feedback, we will close this issue.

#11 Updated by Kyle Knoepfel 4 months ago

Also available in: Atom PDF