All header files (include The ”GRASRunManager.hh“) are located in “/home/jiangjc/gras/05.02.01/include/gras” after installation.
The example is located in “/home/jiangjc/gras/05.02.01/gras-05-02-01/examples/gras_in_external_application/N01_with_GRAS”
I source the ”/home/jiangjc/gras/05.02.01/bin/gras-env.sh“ before running the example.
What is the output of make VERBOSE=1 here? This will show the complete compilation command used which include which include paths are used. That may help in identifying why the GRAS header(s) are not being picked up.
It’s also worth contacting the GRAS developers on their development/user fora/systems as they will be able to provide better support (GRAS is a third party application utilizing Geant4).
The GRAS include path shown here is “-I/home/jiangjc/N01_with_GRAS/include” which is my path of the example, I try another example and the include path also shows the example include. It’s very strange.
I think that’s correct, assuming that holds headers for the example in question. There’s definitely no path to the GRAS headers themselves that I can see though - this would indicate a bug in how GRAS is found in the example, or in whatever files (e.g. “GRASConfig.cmake”) it installs for use with a CMake build. That’s probably best reported/asked to the GRAS developers.
Thanks for your reply, as you saw though, the file “GRASConfig.cmake” was not completely complied, includes just two effective line, many variables were not defined (e.g. ”GRAS_INCLUDE_DIRS“). I check the “CMakeLists.txt” in the source files, it sets GRAS variables in the file “GRASConfig.cmake” while compiling, and no running error during cmake process. Maybe I‘d better to ask to the GRAS developers.
Were you able to figure this out? I have been struggling with the same problem, I have found that the GRASConfig.cmake file did not list path for the headers or libraires, I am not sure if this is intentional or not.