-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[cmake] Fix configuration with Geant4 11.1 #267
Conversation
When trying to configure with Geant4 11.1, G4HepEm seems to have problems finding Geant4 even though AdePT's correctly found it before. As a reason, CMake quotes not finding XercesC even though both Vecgeom and Geant4 (searched from AdePT) find it. It seems explicitly looking for XercesC solves the problem (not sure why).
@agheata @JuanGonzalezCaminero which version of Geant4 are you using, are you also facing errors like
with Geant4 11.1 (version 11.0 seems to work fine)? cc @drbenmorgan as well |
Can one of the admins verify this patch? |
@hahnjo also which CMake version are you running? Just wondering if this is related to the changes in 3.27 that broke the finding of EXPAT. Do you have a I'll fire up things locally as well, though likely won't have time until Monday. |
I'm on 11.0 and don't see this |
(from AlmaLinux 8)
Yes, that file exists. The relevant lines are
which looks reasonable to me, and is the same as in
Thanks! Not really urgent for now, was just trying to update my local build... |
Thanks @hahnjo, those lines indeed look fine. It might be something to do with the version - you could try
to
and seeing if that resolves things. I'll have a look in any case as there's something weird going on. |
@drbenmorgan no luck, only changed the error message to
ie not mentioning |
I've managed to reproduce this locally, albeit using the if(NOT DEFINED VecCore_DIR)
set(VecCore_DIR "/.../lib64/cmake/VecCore")
endif()
if(NOT DEFINED XercesC_INCLUDE_DIR)
set(XercesC_INCLUDE_DIR "/.../include")
endif() with |
@drbenmorgan yes, I'm using (approximately) VecGeom if(NOT DEFINED XercesC_INCLUDE_DIR)
set(XercesC_INCLUDE_DIR "/usr/include")
endif() And just for completeness, Geant4 is not built against any VecGeom. |
Thanks! Same here, "pure" Geant4 without VecGeom, and for reference, same CMake version (3.20.2, Rocky Linux 9). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed, people still have this problem and this fix solves it, so I am approving it.
When trying to configure with Geant4 11.1, G4HepEm seems to have problems finding Geant4 even though AdePT's correctly found it before. As a reason, CMake quotes not finding XercesC even though both Vecgeom and Geant4 (searched from AdePT) find it. It seems explicitly looking for XercesC solves the problem (not sure why).