Can't find Xerces installed by Conda

I’m currently trying to build Geant4 with GDML to run batch mode simulations on a computational cluster I’m on, which is built on ppc64le architecture for which geant4 is not in the conda-forge. I installed xerces-c through conda and have the library stored as /home/username/miniconda/pkgs/xerces-c-3.2.4-h548074f_0/lib/libxerces-c.so in my base repository and as /home/username/miniconda/envs/hep_venv/lib/libxerces-c.so. However, when I run the CMake in the Geant4 build repository, I get:

cmake -DCMAKE_INSTALL_PREFIX=../geant10.7.0_install/ -DGEANT4_USE_OPENGL_XML=ON -DGEANT4_USE_GDML=ON -DXercesC_LIBRARY=/home/aryanv28/miniconda/envs/hep_venv/lib/libxerces-c.so -DGEANT4_
INSTALL_DATA=ON ../geant4-v10.7.0
-- The C compiler identification is GNU 8.5.0
-- The CXX compiler identification is GNU 8.5.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found EXPAT: /usr/lib64/libexpat.so (found version "2.2.5")
CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Failed to find XercesC (missing: XercesC_INCLUDE_DIR XercesC_VERSION)
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake/Modules/FindXercesC.cmake:110 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  cmake/Modules/G4OptionalComponents.cmake:203 (find_package)
  cmake/Modules/G4CMakeMain.cmake:59 (include)
  CMakeLists.txt:51 (include)


-- Configuring incomplete, errors occurred!
See also "/home/aryanv28/geant4/geant10.7.0_build/CMakeFiles/CMakeOutput.log"

Is there an error in my set-up or how I’m calling the Xerces-C library path?

_Geant4 Version: 10.7.0
_Operating System: Linux ppc64le
_Compiler/Version: GCC 8.5.0


It’s missing the XercesC headers, so it’s probably better to do:

$ cmake -DCMAKE_PREFIX_PATH="/home/aryanv28/miniconda/envs/hep_venv" <otherargs>

so that CMake should pick up everything under that Conda environment.

Got it in one, it’s working perfectly now. Thank you!

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