Compiling root5 with modern OS/compiler


ROOT Version: 5.34.38
Platform: CentOS 8
Compiler: gcc 8.3.1


I’m trying to get the latest root 5 version to compile under CentOS 8 using the default gcc 8.3.1 compiler. This is to provide root 5 for older programs that haven’t (yet) been adapted for root 6.

Using cmake with -Dall=ON, support is enabled for asimage astiff builtin_afterimage builtin_ftgl builtin_glew cintex exceptions explicitlink fftw3 fortran gdml genvector http krb5 ldap mathmore memstat minuit2 mysql odbc opengl python reflex roofit shadowpw shared ssl table thread tmva unuran vc vdt xft xml x11 xrootd. Compiling gives an error

In file included from /opt/cern/root/root-5.34.38/proof/proofd/src/XrdProofConn.cxx:34:
/opt/cern/root/root_v5.34.38/include/XrdProofConn.h:37:10: fatal error: XrdClient/XrdClientUnsolMsg.hh: No such file or directory
 #include "XrdClient/XrdClientUnsolMsg.hh"

I’ve seen a number of other people having problems compiling root 5, but those errors seemed to always have been related to newer features of the compilers? In this case it just seems like the tar package is missing files?

There seems to be a problem in the detection of where xrootd is installed. If you do not need xrootd, you can simple and -Dxrootd=OFF to the cmake line.

I also had to turn off MySQL (-Dmysql=OFF), as if wouldn’t find my_global.h either, but it compiled now.

Thank you Philippe!

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