Hi,
For compatibility reasons, I have to use GEANT4 v10.1.3.
I am working on centos7, using a CERN VM machine,
CC7-x86_64, up-to-date, all Geant4 dependencies installed, compiler gcc 7.3 from devtoolset-7, cmake3 version 3.14.6.
Trying to compile it, I get the following error
CMake Error at cmake/Modules/Geant4MacroLibraryTargets.cmake:111 (add_library):
Cannot find source file:
/afs/cern.ch/user/g/ghete/work/NUCLEUS/simulation/test_Geant/src/geant4-v10.1.3/source/visualization/HepRep/src/GZIPOutputStream.cc
Tried extensions .c .C .c++ .cc .cpp .cxx .cu .m .M .mm .h .hh .h++ .hm
.hpp .hxx .in .txx
GZIPOutputStream.cc is indeed not there for v10.1.3 (well, the file name is capitalized in cmake module, but with small letters in the release, gzipoutputstream.cc).
Here is the recipe to reproduce the error (bash shell), for testing I switched off some options (qt, opengl, …)
mkdir build
export GEANT4_VERSION=“v10.1.3”
export GEANT4_INSTALL_PREFIX="/usr/local/geant4/{GEANT4_VERSION}"
cd build
export SRC_GEANT4="../src/geant4-{GEANT4_VERSION}"
export QTDIR="/usr/lib64/qt5"
export PATH="/usr/lib64/qt5/bin:PATH"
git clone https://gitlab.cern.ch/geant4/geant4.git -b {GEANT4_VERSION} {SRC_GEANT4}
scl enable devtoolset-7 bash
cmake3 {SRC_GEANT4}
-DCMAKE_INSTALL_PREFIX="$GEANT4_INSTALL_PREFIX"
-DCMAKE_BUILD_TYPE=“RelWithDebInfo”
-DGEANT4_BUILD_MULTITHREADED=ON
-DGEANT4_BUILD_CXXSTD=c++11
-DGEANT4_USE_GDML=ON
-DGEANT4_USE_QT=OFF
-DGEANT4_USE_OPENGL_X11=OFF
-DGEANT4_USE_RAYTRACER_X11=OFF
-DGEANT4_USE_XM=OFF
-DGEANT4_INSTALL_DATA=ON
-Dfail-on-missing=ON
In the end, the simulation program will go into a singularity container (GEANT, ROOT, the simulation pprogram), to be run on some HPC.
I intend to migrate it directly to Geant4 10.6, but as of now I have to get some results with the old setup.
All v10.1.X versions give the same error, also when using devtoolset-6. LCG_86 has however v10.1.2 included, for centos7 architecture, but on HPC I can’t use SFT cvmfs, and integrating cvmfs in singularity is still a hassle.
Best regards,
Vasile