Error while building ROOT 6

Hi!

I’m trying to build ROOT 6.16.00, but there is a strange error:

[ 91%] Building CXX object graf3d/gl/CMakeFiles/RGL.dir/G__RGL.cxx.o
In file included from /home/vlad/HEP/ROOT_6.16.00/graf3d/gl/G__RGL.cxx:121:0:
/home/vlad/HEP/ROOT_6.16.00/include/TX11GL.h:27:10: fatal error: GL/glx.h: No such file or directory
 #include <GL/glx.h>
          ^~~~~~~~~~
compilation terminated.
graf3d/gl/CMakeFiles/RGL.dir/build.make:241: recipe for target 'graf3d/gl/CMakeFiles/RGL.dir/G__RGL.cxx.o' failed
make[2]: *** [graf3d/gl/CMakeFiles/RGL.dir/G__RGL.cxx.o] Error 1
CMakeFiles/Makefile2:25810: recipe for target 'graf3d/gl/CMakeFiles/RGL.dir/all' failed
make[1]: *** [graf3d/gl/CMakeFiles/RGL.dir/all] Error 2
Makefile:151: recipe for target 'all' failed
make: *** [all] Error 2

but I have this file!

vlad@vlad-Lenovo-ideapad-330-15ARR:~/HEP/ROOT_6.16.00$ apt-file search GL/glx.h
khronos-api: /usr/include/khronos-api/GL/glx.h
mesa-common-dev: /usr/include/GL/glx.h
nvidia-340-dev: /usr/include/nvidia-340/GL/glx.h

What is the problem? How can I fix it?

sudo apt-get install mesa-common-dev

It is already installed. Anyway, I have tried to remove build-directory and rebuild it again in the new one after computer rebooting. And there is the new one problem

[ 46%] Generating G__Core.cxx, ../../lib/libCore.rootmap
ERROR in cling::CIFactory::createCI():
  resource directory /home/vlad/HEP/ROOT_6.16.00/etc/cling/lib/clang/5.0.0 not found!
In file included from input_line_1:1:
In file included from /usr/include/c++/7/new:40:
In file included from /usr/include/c++/7/exception:142:
In file included from /usr/include/c++/7/bits/exception_ptr.h:38:
/usr/include/c++/7/bits/cxxabi_init_exception.h:38:10: fatal error: 'stddef.h' file not found
#include <stddef.h>
         ^~~~~~~~~~
In file included from input_line_4:1:
In file included from /usr/include/assert.h:35:
In file included from /usr/include/features.h:448:
/usr/include/x86_64-linux-gnu/gnu/stubs.h:7:11: fatal error: 'gnu/stubs-32.h' file not found
# include <gnu/stubs-32.h>
          ^~~~~~~~~~~~~~~~
Error: Error loading the default header files.
core/base/CMakeFiles/G__Core.dir/build.make:450: recipe for target 'core/base/G__Core.cxx' failed
make[2]: *** [core/base/G__Core.cxx] Error 1
CMakeFiles/Makefile2:18976: recipe for target 'core/base/CMakeFiles/G__Core.dir/all' failed
make[1]: *** [core/base/CMakeFiles/G__Core.dir/all] Error 2
Makefile:151: recipe for target 'all' failed
make: *** [all] Error 2

Try the newest ROOT release.

Well, Now I am trying to build ROOT v. 6.18.04, and I’m facing with the next one error

[ 93%] Generating etc/allDict.cxx.pch
error: unable to open output file './allDict_rdict.pch': 'Too many open files'
Error in <WriteAST>: Couldn't open output stream to './allDict_rdict.pch'!
CMakeFiles/onepcm.dir/build.make:64: recipe for target 'etc/allDict.cxx.pch' failed
make[2]: *** [etc/allDict.cxx.pch] Error 1
CMakeFiles/Makefile2:677: recipe for target 'CMakeFiles/onepcm.dir/all' failed
make[1]: *** [CMakeFiles/onepcm.dir/all] Error 2
Makefile:151: recipe for target 'all' failed
make: *** [all] Error 2

Try with: make -j 1

The aforecited output has been gotten already with -j 1:

cmake --build . -- -j 1

Hi,
could you provide this please:

ROOT Version: 6.18/04
Platform:
Compiler:

Too many open files

looks like a problem with limits:

ulimit -a

if you were on Unix

Otto

cmake version 3.10.2
Platform: Ubuntu 18.04

Well, I used ulimit -n 50000 and this error has gone. BUT there is the new one

[ 97%] Linking CXX shared library ../../lib/libEGPythia8.so
/home/vlad/HEP/pythia8235/lib/libpythia8.a(PartonDistributions.o): In function `Pythia8::LHAPDF::symbol(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
PartonDistributions.cc:(.text+0xbd06): undefined reference to `dlsym'
PartonDistributions.cc:(.text+0xbd0e): undefined reference to `dlerror'
PartonDistributions.cc:(.text+0xbdd6): undefined reference to `dlerror'
/home/vlad/HEP/pythia8235/lib/libpythia8.a(PartonDistributions.o): In function `Pythia8::LHAPDF::~LHAPDF()':
PartonDistributions.cc:(.text+0xc011): undefined reference to `dlclose'
PartonDistributions.cc:(.text+0xc016): undefined reference to `dlerror'
/home/vlad/HEP/pythia8235/lib/libpythia8.a(PartonDistributions.o): In function `Pythia8::LHAPDF::LHAPDF(int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, Pythia8::Info*)':
PartonDistributions.cc:(.text+0x151aa): undefined reference to `dlerror'
PartonDistributions.cc:(.text+0x1541d): undefined reference to `dlopen'
PartonDistributions.cc:(.text+0x15429): undefined reference to `dlerror'
collect2: error: ld returned 1 exit status
montecarlo/pythia8/CMakeFiles/EGPythia8.dir/build.make:179: recipe for target 'lib/libEGPythia8.so' failed
make[2]: *** [lib/libEGPythia8.so] Error 1
CMakeFiles/Makefile2:27802: recipe for target 'montecarlo/pythia8/CMakeFiles/EGPythia8.dir/all' failed
make[1]: *** [montecarlo/pythia8/CMakeFiles/EGPythia8.dir/all] Error 2
Makefile:151: recipe for target 'all' failed
make: *** [all] Error 2

Wile is right you need to rebuild pythia8.

Anyway given the different issues you encountered I `d propose
to build root without pythia8 to clearly separate problems.
Also try with j=1 and j=4

Otto

Well, I have built ROOT 6.18.04 without PYTHIA 8.

Thanks you both for help!

The ROOT team provides ready-to-use binary distributions for some systems, including various Ubuntu versions, which you just need to download and unpack (see “Using binaries” therein).

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