AIDASoft / DD4hep

Detector Description Toolkit for High Energy Physics
http://dd4hep.cern.ch
GNU Lesser General Public License v3.0
50 stars 99 forks source link

file without extension in home directory causes build crash #214

Closed jstrube closed 7 years ago

jstrube commented 7 years ago

I have a file in my home directory, named list. Its existence causes the build to crash. Renaming the file to have an extension fixes the problem. Relevant error message as follows:

[ 10%] Linking CXX shared library ../lib/libDDParsers.so
[ 10%] Built target DDParsers
[ 11%] Generating G__DD4hep.cxx
[ 11%] Generating G__DD4hepSegmentations.cxx
[ 11%] Generating G__DD4hepProperties.cxx
[ 11%] Generating G__DD4hepGeo.cxx
In file included from input_line_12:74:
In file included from /home/ilc/jstrube/ILC/work/DD4hep/DDCore/include/DD4hep/Volumes.h:17:
In file included from /home/ilc/jstrube/ILC/work/DD4hep/DDCore/include/DD4hep/Handle.h:17:
In file included from /home/ilc/jstrube/ILC/work/DD4hep/DDCore/include/DD4hep/Primitives.h:21:
/gpfs/home/ilc/jstrube/list:1:1: error: expected unqualified-id
/group/ilc/users/skawada/CPVHgen/out/e2.stdhep
^
In file included from input_line_12:72:
In file included from /home/ilc/jstrube/ILC/work/DD4hep/DDCore/include/DD4hep/DetElement.h:17:
In file included from /home/ilc/jstrube/ILC/work/DD4hep/DDCore/include/DD4hep/Handle.h:17:
In file included from /home/ilc/jstrube/ILC/work/DD4hep/DDCore/include/DD4hep/Primitives.h:21:
/gpfs/home/ilc/jstrube/list:1:1: error: expected unqualified-id
/group/ilc/users/skawada/CPVHgen/out/e2.stdhep
^
Error: /cvmfs/sft.cern.ch/lcg/releases/LCG_85b/ROOT/6.06.06/x86_64-slc6-gcc49-opt/bin/rootcling: compilation failure (/home/ilc/jstrube/ILC/work/DD4hep/build/DDCore/../lib/G__DD4hepGeoaa217d4e9d_dictUmbrella.h)
make[2]: *** [DDCore/G__DD4hepGeo.cxx] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from input_line_12:12013:
/gpfs/home/ilc/jstrube/list:1:1: error: expected unqualified-id
/group/ilc/users/skawada/CPVHgen/out/e2.stdhep
^
In file included from input_line_12:12294:
/gpfs/home/ilc/jstrube/list:1:1: error: expected unqualified-id
/group/ilc/users/skawada/CPVHgen/out/e2.stdhep
^
input_line_12:12306:8: warning: variable templates are a C++14 extension [-Wc++14-extensions]
  void insert_item(std::list<T>&   c, Q, const T& d)  {
       ^
input_line_12:12306:8: error: variable has incomplete type 'void'
input_line_12:12306:25: error: no member named 'list' in namespace 'std'
  void insert_item(std::list<T>&   c, Q, const T& d)  {
                   ~~~~~^
input_line_12:12306:30: error: 'T' does not refer to a value
  void insert_item(std::list<T>&   c, Q, const T& d)  {
                             ^
input_line_12:12305:34: note: declared here
  template <typename Q, typename T>
                                 ^
input_line_12:12306:36: error: use of undeclared identifier 'c'
  void insert_item(std::list<T>&   c, Q, const T& d)  {
                                   ^
input_line_12:12306:39: error: 'Q' does not refer to a value
  void insert_item(std::list<T>&   c, Q, const T& d)  {
                                      ^
input_line_12:12305:22: note: declared here
  template <typename Q, typename T>
                     ^
input_line_12:12306:42: error: expected expression
  void insert_item(std::list<T>&   c, Q, const T& d)  {
                                         ^
input_line_12:12306:53: error: expected ';' at end of declaration
  void insert_item(std::list<T>&   c, Q, const T& d)  {
                                                    ^
                                                    ;
input_line_12:12306:55: error: expected unqualified-id
  void insert_item(std::list<T>&   c, Q, const T& d)  {
                                                      ^
Error: /cvmfs/sft.cern.ch/lcg/releases/LCG_85b/ROOT/6.06.06/x86_64-slc6-gcc49-opt/bin/rootcling: compilation failure (/home/ilc/jstrube/ILC/work/DD4hep/build/DDCore/../lib/G__DD4hepb215d054e0_dictUmbrella.h)
make[2]: *** [DDCore/G__DD4hep.cxx] Error 1
make[1]: *** [DDCore/CMakeFiles/DDCore.dir/all] Error 2
make: *** [all] Error 2
andresailer commented 7 years ago

How does your home directory end up in the include_directories? What was the cmake command you used? What is the output of make VERBOSE=1 when the error is happening?

jstrube commented 7 years ago

That's exactly what I would like to know. I followed the instructions in the README. Can you reproduce?

andresailer commented 7 years ago

If I don't know what exactly you did, I cannot even try to reproduce. So please just post what you did. And also the output from the cmake call. Which environment for root you sourced...

jstrube commented 7 years ago

can not reproduce. The root version I sourced is no longer good enough. Might be related to mixing in a ROOT version (advertised in README) that is no longer sufficient, without cleaning the build directory. Also, might be related to the -j flag. Not interested in spending more time to chase cling bugs.