Something wrong with xerces for GDML

I have installed xerces-c-3.2.5 for GDML. The installation of geant4 has been finished. But when I run

source geant4.sh

something goes wrong and shows

[3]    19854 segmentation fault  /home/llm/software/geant4/xerces/install/lib/libxerces-c.so
geant4.sh:64: permission denied: debug
geant4.sh:64: permission denied: /home/llm/software/geant4/xerces/install

I have tried

chmod -R 777 xerces/
chown -R llm:llm xerces/

but nothing changes.

_Geant4 Version:_10.7.4
_Operating System:_WSL2
Compiler/Version:
CMake Version:


What is on that line?

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:optimized;/home/llm/software/geant4/xerces/install/lib/libxerces-c.so;debug;/home/llm/software/geant4/xerces/install

what are the “optimized;” and “;debug;” strings embedded in the $LD_LIBRARY_PATH value? Those are not normal parts of a path statement? I suspect that you added incorrect values to some of the CMake options.

Perhaps it is because I have followed different installation guides. I will try to rebuild geant4.

These are CMake’s way of supporting more than one variant of a library so that e.g., only Debug targets in a project are linked to a Debug dependency. The creation of geant4.sh assumes a Linux/Unix system where generally this distinction doesn’t exist, or is less important.

I’m not sure why these get set in a WSL system though especially as the debug path is a directory not a library. Did you set XercesC_LIBRARY_DEBUG explicitly? That’s the only way I can think that it would have got set to this.

That’s it! I failed to configure the projest the first time and it said I should provide XercesC_INCLUDE_DIR and XercesC_LIBRARY (or something like that). So I use
ccmake .
and set them in the advanced mode.
Thank you all for your help!

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