Fatal error modified `<new>`

I think gcc 4.8.5 is the “native” compiler on CentOS 7.

“old” RedHat “Developer Toolset”: linux.web.cern.ch/linux/devtoolset/
“new” RedHat “Software Collections”: linux.web.cern.ch/linux/scl/

I have not installed those and checking with yum it is not aware of those so I assume that is not the issue.

yum list installed centos-release-scl devtoolset-2 ... Error: No matching Packages to list

Just to make sure … in one of your previous posts, you mentioned that you “experimented” with some epel root-6.06.06 distribution. Did you make sure to “purge” all epel ROOT related packages (“root-*”) before trying to build your new ROOT?

In your “scriptout.txt”, there’s a strange “The Fortran compiler identification is unknown” message … check:
gfortran --version

BTW. Assuming that you “miss” some vital package … can you try to install “optional packages” (then you will need to build your ROOT from scratch again, i.e. removing everything that exists now).

I did go through some effort to make sure those packages were removed and yum reports that they are gone.

yum list installed root root-
Error: No matching Packages to list

I have not installed gfortran as I have no use for it and it is not listed as a dependency.

gfortran --version
bash: gfortran: command not found...

I’ve gone ahead and started to try and install all the “optional packages” using the following command. I would have preferred not to do this, but I’m willing to help try and chase down this bug.

sudo yum install gcc-gfortran openssl-devel pcre-devel \
mesa-libGL-devel mesa-libGLU-devel glew-devel ftgl-devel mysql-devel \
fftw-devel cfitsio-devel graphviz-devel \
avahi-compat-libdns_sd-devel libldap-dev python-devel \
libxml2-devel gsl-static

I’ve repeated the test using your install script and will post the results after it completes.

It seems to me that “apt-get” is for Ubuntu and similar, while for CentOS and similar it should be “yum” (and packages’ names are different).

I had mistakenly listed the apt-get command and optional dependencies instead of what I had used for CentOS from yum.

I was able to install all these optional dependencies except for gsl-static and libldap-dev as they were not found.

The results of your script still end with the same error. I’ve attached the output of the script as well.

[ 35%] Generating G__IO.cxx, ../../lib/libRIO.rootmap
input_line_1:1:10: fatal error: 'new' file not found
#include <new>
         ^
/bin/sh: line 1:  1809 Segmentation fault      (core dumped) ../../bin/rootcling_tmp -f G__IO.cxx -s /tmp/root-build/lib/libRIO.so -rml libRIO.so -rmf /tmp/root-build/lib/libRIO.rootmap -I/tmp/root-6.06.06 -I/tmp/root-build/include TZIPFile.h TVirtualObject.h TVirtualCollectionIterators.h TVirtualArray.h TStreamerInfoActions.h TStreamerInfo.h TMemFile.h TMapFile.h TMakeProject.h TLockFile.h TKeyMapFile.h TKey.h TGenCollectionStreamer.h TGenCollectionProxy.h TFree.h TFilePrefetch.h TFileMerger.h TFileCacheWrite.h TFileCacheRead.h TFile.h TFPBlock.h TEmulatedMapProxy.h TEmulatedCollectionProxy.h TDirectoryFile.h TContainerConverters.h TCollectionProxyFactory.h TBufferFile.h TArchiveFile.h /tmp/root-6.06.06/io/io/inc/LinkDef.h
gmake[2]: *** [io/io/G__IO.cxx] Error 139
gmake[1]: *** [io/io/CMakeFiles/G__IO.dir/all] Error 2
gmake: *** [all] Error 2

scriptout_optional.txt (319 KB)

You probably really want to install (for “mathmore”): gsl-devel
For some tests / tutorials you need: redhat-lsb-core
For ldap support, you need: openldap-dev

Apart from this, I don’t really see any obvious problem (well, it’s a bit strange to see “Could NOT find GIF / TIFF / PNG / JPEG” but maybe it’s not a big deal).

Let’s assume that the compiler has some bug related to optimization … try to build your ROOT from scratch again adding: -DCMAKE_BUILD_TYPE=“Debug”

I’ve installed gsl-devel, redhat-lsb-core and openldap-dev and then using your modified script (adding -DCMAKE_BUILD_TYPE=“Debug”) I’ve attempted to build ROOT 6. I again encounter the same following error. I’ve also attached the full output.

[ 34%] Generating G__IO.cxx, ../../lib/libRIO.rootmap
input_line_1:1:10: fatal error: 'new' file not found
#include <new>
         ^
/bin/sh: line 1: 31256 Segmentation fault      (core dumped) ../../bin/rootcling_tmp -f G__IO.cxx -s /tmp/root-build/lib/libRIO.so -rml libRIO.so -rmf /tmp/root-build/lib/libRIO.rootmap -I/tmp/root-6.06.06 -I/tmp/root-build/include TZIPFile.h TVirtualObject.h TVirtualCollectionIterators.h TVirtualArray.h TStreamerInfoActions.h TStreamerInfo.h TMemFile.h TMapFile.h TMakeProject.h TLockFile.h TKeyMapFile.h TKey.h TGenCollectionStreamer.h TGenCollectionProxy.h TFree.h TFilePrefetch.h TFileMerger.h TFileCacheWrite.h TFileCacheRead.h TFile.h TFPBlock.h TEmulatedMapProxy.h TEmulatedCollectionProxy.h TDirectoryFile.h TContainerConverters.h TCollectionProxyFactory.h TBufferFile.h TArchiveFile.h /tmp/root-6.06.06/io/io/inc/LinkDef.h
gmake[2]: *** [io/io/G__IO.cxx] Error 139
gmake[1]: *** [io/io/CMakeFiles/G__IO.dir/all] Error 2
gmake: *** [all] Error 2

script_debug.txt (319 KB)

Again, I cannot see any obvious problem.
However, the new “script_debug.txt” file still says:
– Build Type: RelWithDebInfo
So, did you remember to delete everything before trying to build it again?
And if yes, did you add -DCMAKE_BUILD_TYPE=“Debug” to the very first cmake call (where you configure ROOT, e.g. right before -DCMAKE_INSTALL_PREFIX=…)?

Something is still wrong with ldap … it reports “ldap library not found” … maybe you need to install also “openldap” (I assumed that it would be automatically installed as a dependency of “openldap-dev”).
In any case, “missing” ldap cannot be responsible for the current problem.

Hi,

Which compiler did you use? How did you configure the build to use that compiler (the exact invocation, please)? Could you attach your CMakeCache.txt, please?

Cheers, Axel.

Sorry for the delay, I’ve had other things to attend to and this was not a priority.

The compiler info is listed in the output scripts. GCC 4.8.5. This was on a brand new install of CentOS 7.

[quote=“ksmith”]

`root-config --cxx` --version c++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4) Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. [/quote]

I’ve been following the procedure suggested by Pepe Le Pew using a script to download and make a clean build directory

I was at the step of confirming that I had properly added the cmake flag to set the build type to debug when I stepped away from this issue

[quote=“Pepe Le Pew”]Again, I cannot see any obvious problem.
However, the new “script_debug.txt” file still says:
– Build Type: RelWithDebInfo
So, did you remember to delete everything before trying to build it again?
And if yes, did you add -DCMAKE_BUILD_TYPE=“Debug” to the very first cmake call (where you configure ROOT, e.g. right before -DCMAKE_INSTALL_PREFIX=…)?

Something is still wrong with ldap … it reports “ldap library not found” … maybe you need to install also “openldap” (I assumed that it would be automatically installed as a dependency of “openldap-dev”).
In any case, “missing” ldap cannot be responsible for the current problem.[/quote]

As Axel says, attach your “CMakeCache.txt” file (plus the “exact invocations” of cmake and make).
BTW. Can this problem be related: LLVM collision with OpenGL in CentOS7

Hi,

And the error is still that the build fails to find <new>?

Then please do the following

  • attach CMakeCache.txt. Really!
  • send the output of “cmake .”
  • the content of interpreter/cling/lib/Interpreter/cling-compiledata.h in your build directory
  • that should have a string after “CLING_CXX_INCL” which corresponds to a directory. In that directory, is there a file called “new”?

Cheers, Axel.

Unfortunately, the script that was provided deletes the build environment. I will need to recompile from scratch for the above cases. I’ll try and get to that today.

Also, the earlier CMAKE_BUILD_TYPE=Debug failed as there was a typo in the statement. I have corrected this.

Yes, I still get the error:

[ 34%] Generating G__IO.cxx, ../../lib/libRIO.rootmap
input_line_1:1:10: fatal error: 'new' file not found
#include <new>
         ^
/bin/sh: line 1: 26507 Segmentation fault      (core dumped) ../../bin/rootcling_tmp -f G__IO.cxx -s /tmp/root-build/lib/libRIO.so -rml libRIO.so 
-rmf /tmp/root-build/lib/libRIO.rootmap -I/tmp/root-6.06.06 -I/tmp/root-build/include TZIPFile.h TVirtualObject.h TVirtualCollectionIterators.h T$
irtualArray.h TStreamerInfoActions.h TStreamerInfo.h TMemFile.h TMapFile.h TMakeProject.h TLockFile.h TKeyMapFile.h TKey.h TGenCollectionStreamer$
h TGenCollectionProxy.h TFree.h TFilePrefetch.h TFileMerger.h TFileCacheWrite.h TFileCacheRead.h TFile.h TFPBlock.h TEmulatedMapProxy.h TEmulated$
ollectionProxy.h TDirectoryFile.h TContainerConverters.h TCollectionProxyFactory.h TBufferFile.h TArchiveFile.h /tmp/root-6.06.06/io/io/inc/LinkD$
f.h
gmake[2]: *** [io/io/G__IO.cxx] Error 139
gmake[1]: *** [io/io/CMakeFiles/G__IO.dir/all] Error 2
gmake: *** [all] Error 2

I’ve attached all the files as requested. I do not see the keyword CLING_CXX_INCL in the cling-compiledata.h file.
testbuild.sh.txt (672 Bytes)
script_debug.txt (159 KB)
CMakeCache.txt (110 KB)
cmake_dot_output.txt (2 KB)
cling-compiledata.h (515 Bytes)

Apologies for dropping the ball on this. Can you confirm that this has been fixed in v6.08? It should…

I no longer have access to this machine. I’ve passed the information on to the current steward. If I get a response about the newer version I’ll be sure to pass it along. Thanks for coming back to it.