Skip to content
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

Cannot build local code with make #115

Open
c-dilks opened this issue Nov 27, 2023 · 7 comments
Open

Cannot build local code with make #115

c-dilks opened this issue Nov 27, 2023 · 7 comments
Assignees

Comments

@c-dilks
Copy link
Member

c-dilks commented Nov 27, 2023

Environment: (where does this bug occur, have you tried other environments)

  • Which branch (often main for latest released): main
  • Which version (or HEAD for the most recent on git):
  • Any specific OS or system where the issue occurs?
  • Any special versions of ROOT or Geant4?

Steps to reproduce: (give a step by step account of how to trigger the bug)

  1. make

Expected Result: (what do you expect when you execute the steps above)

Successful build of the local code

Actual Result: (what do you get when you execute the steps above)

2023-11-27T19:06:39.3888671Z ----- build lib/libRichGeo.so -----
2023-11-27T19:06:39.3902231Z g++ /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeo.cc /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeoDRICH.cc /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeoPFRICH.cc /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/ReadoutGeo.cc -shared -o lib/libRichGeo.so -g -Wno-deprecated -fPIC -m64 -fno-inline -Wno-write-strings -DSPDLOG_FMT_EXTERNAL -pthread -std=c++20 -m64 -I/opt/software/linux-debian12-x86_64_v2/gcc-12.2.0/root-6.28.06-p6t2pezsnnydlb2a5wrv4xdvzzvnqorg/include/root -I/home/runner/work/drich-dev/drich-dev/prefix/include -I/home/runner/work/drich-dev/drich-dev/prefix/include/IRT -Isrc -I/usr/local/include -I/home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo -L/opt/software/linux-debian12-x86_64_v2/gcc-12.2.0/root-6.28.06-p6t2pezsnnydlb2a5wrv4xdvzzvnqorg/lib/root -lGui -lCore -lImt -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lROOTVecOps -lTree -lTreePlayer -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -lMultiProc -lROOTDataFrame -Wl,-rpath,/opt/software/linux-debian12-x86_64_v2/gcc-12.2.0/root-6.28.06-p6t2pezsnnydlb2a5wrv4xdvzzvnqorg/lib/root -pthread -lm -ldl -rdynamic -L/home/runner/work/drich-dev/drich-dev/prefix/lib -lIRT -ledm4eic -L/usr/local/lib -lDDCore -lDDRec -lpodio -lpodioRootIO -ledm4hep -lfmt -lspdlog -lG4global -lG4materials -lG4geometry -lG4persistency
2023-11-27T19:06:42.9913706Z In file included from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeo.cc:22:
2023-11-27T19:06:42.9932479Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:20:9: error: redefinition of 'class richgeo::Sensor'
2023-11-27T19:06:42.9934092Z    20 |   class Sensor {
2023-11-27T19:06:42.9934570Z       |         ^~~~~~
2023-11-27T19:06:42.9937777Z In file included from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeo.h:21,
2023-11-27T19:06:42.9940197Z                  from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeo.cc:4:
2023-11-27T19:06:42.9943000Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:20:9: note: previous definition of 'class richgeo::Sensor'
2023-11-27T19:06:42.9944745Z    20 |   class Sensor {
2023-11-27T19:06:42.9945288Z       |         ^~~~~~
2023-11-27T19:06:42.9952018Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:34:8: error: multiple definition of 'enum richgeo::radiator_enum'
2023-11-27T19:06:42.9953812Z    34 |   enum radiator_enum {
2023-11-27T19:06:42.9954347Z       |        ^~~~~~~~~~~~~
2023-11-27T19:06:42.9955896Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:34:8: note: previous definition here
2023-11-27T19:06:42.9957266Z    34 |   enum radiator_enum {
2023-11-27T19:06:42.9957803Z       |        ^~~~~~~~~~~~~
2023-11-27T19:06:42.9960080Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:41:22: error: redefinition of 'std::string richgeo::RadiatorName(int, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:42.9962423Z    41 |   static std::string RadiatorName(int num, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:42.9963442Z       |                      ^~~~~~~~~~~~
2023-11-27T19:06:42.9965729Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:41:22: note: 'std::string richgeo::RadiatorName(int, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:42.9968406Z    41 |   static std::string RadiatorName(int num, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:42.9969420Z       |                      ^~~~~~~~~~~~
2023-11-27T19:06:42.9971682Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:52:14: error: redefinition of 'int richgeo::RadiatorNum(std::string, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:42.9973943Z    52 |   static int RadiatorNum(std::string name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:42.9974897Z       |              ^~~~~~~~~~~
2023-11-27T19:06:42.9977072Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:52:14: note: 'int richgeo::RadiatorNum(std::string, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:42.9979359Z    52 |   static int RadiatorNum(std::string name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:42.9980374Z       |              ^~~~~~~~~~~
2023-11-27T19:06:42.9982621Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:62:14: error: redefinition of 'int richgeo::RadiatorNum(const char*, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:42.9984988Z    62 |   static int RadiatorNum(const char * name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:42.9986075Z       |              ^~~~~~~~~~~
2023-11-27T19:06:42.9988393Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:62:14: note: 'int richgeo::RadiatorNum(const char*, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:42.9990589Z    62 |   static int RadiatorNum(const char * name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:42.9991550Z       |              ^~~~~~~~~~~
2023-11-27T19:06:42.9993841Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:67:14: error: redefinition of 'int richgeo::ParseRadiatorName(std::string, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:42.9996691Z    67 |   static int ParseRadiatorName(std::string input, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:42.9997820Z       |              ^~~~~~~~~~~~~~~~~
2023-11-27T19:06:43.0000175Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:67:14: note: 'int richgeo::ParseRadiatorName(std::string, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:43.0002872Z    67 |   static int ParseRadiatorName(std::string input, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:43.0003993Z       |              ^~~~~~~~~~~~~~~~~
2023-11-27T19:06:48.2492781Z In file included from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeoDRICH.h:19,
2023-11-27T19:06:48.2494911Z                  from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeoDRICH.cc:4:
2023-11-27T19:06:48.2497332Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:20:9: error: redefinition of 'class richgeo::Sensor'
2023-11-27T19:06:48.2498820Z    20 |   class Sensor {
2023-11-27T19:06:48.2499277Z       |         ^~~~~~
2023-11-27T19:06:48.2500381Z In file included from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeo.h:21,
2023-11-27T19:06:48.2502147Z                  from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeoDRICH.h:18:
2023-11-27T19:06:48.2504553Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:20:9: note: previous definition of 'class richgeo::Sensor'
2023-11-27T19:06:48.2506106Z    20 |   class Sensor {
2023-11-27T19:06:48.2506575Z       |         ^~~~~~
2023-11-27T19:06:48.2508415Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:34:8: error: multiple definition of 'enum richgeo::radiator_enum'
2023-11-27T19:06:48.2510009Z    34 |   enum radiator_enum {
2023-11-27T19:06:48.2510571Z       |        ^~~~~~~~~~~~~
2023-11-27T19:06:48.2511927Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:34:8: note: previous definition here
2023-11-27T19:06:48.2513313Z    34 |   enum radiator_enum {
2023-11-27T19:06:48.2513828Z       |        ^~~~~~~~~~~~~
2023-11-27T19:06:48.2516007Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:41:22: error: redefinition of 'std::string richgeo::RadiatorName(int, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:48.2518318Z    41 |   static std::string RadiatorName(int num, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:48.2519309Z       |                      ^~~~~~~~~~~~
2023-11-27T19:06:48.2521615Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:41:22: note: 'std::string richgeo::RadiatorName(int, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:48.2523977Z    41 |   static std::string RadiatorName(int num, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:48.2525017Z       |                      ^~~~~~~~~~~~
2023-11-27T19:06:48.2527576Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:52:14: error: redefinition of 'int richgeo::RadiatorNum(std::string, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:48.2529910Z    52 |   static int RadiatorNum(std::string name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:48.2530934Z       |              ^~~~~~~~~~~
2023-11-27T19:06:48.2533234Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:52:14: note: 'int richgeo::RadiatorNum(std::string, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:48.2535649Z    52 |   static int RadiatorNum(std::string name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:48.2536655Z       |              ^~~~~~~~~~~
2023-11-27T19:06:48.2539411Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:62:14: error: redefinition of 'int richgeo::RadiatorNum(const char*, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:48.2541819Z    62 |   static int RadiatorNum(const char * name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:48.2543147Z       |              ^~~~~~~~~~~
2023-11-27T19:06:48.2545391Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:62:14: note: 'int richgeo::RadiatorNum(const char*, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:48.2547776Z    62 |   static int RadiatorNum(const char * name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:48.2548759Z       |              ^~~~~~~~~~~
2023-11-27T19:06:48.2550948Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:67:14: error: redefinition of 'int richgeo::ParseRadiatorName(std::string, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:48.2553334Z    67 |   static int ParseRadiatorName(std::string input, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:48.2554394Z       |              ^~~~~~~~~~~~~~~~~
2023-11-27T19:06:48.2556723Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:67:14: note: 'int richgeo::ParseRadiatorName(std::string, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:48.2559260Z    67 |   static int ParseRadiatorName(std::string input, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:48.2560366Z       |              ^~~~~~~~~~~~~~~~~
2023-11-27T19:06:53.5627511Z In file included from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeoPFRICH.cc:29:
2023-11-27T19:06:53.5630269Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:20:9: error: redefinition of 'class richgeo::Sensor'
2023-11-27T19:06:53.5631748Z    20 |   class Sensor {
2023-11-27T19:06:53.5632208Z       |         ^~~~~~
2023-11-27T19:06:53.5633423Z In file included from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeo.h:21,
2023-11-27T19:06:53.5635149Z                  from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeoPFRICH.h:16,
2023-11-27T19:06:53.5636951Z                  from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/IrtGeoPFRICH.cc:4:
2023-11-27T19:06:53.5639420Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:20:9: note: previous definition of 'class richgeo::Sensor'
2023-11-27T19:06:53.5641016Z    20 |   class Sensor {
2023-11-27T19:06:53.5641506Z       |         ^~~~~~
2023-11-27T19:06:53.5643324Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:34:8: error: multiple definition of 'enum richgeo::radiator_enum'
2023-11-27T19:06:53.5644853Z    34 |   enum radiator_enum {
2023-11-27T19:06:53.5645353Z       |        ^~~~~~~~~~~~~
2023-11-27T19:06:53.5647079Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:34:8: note: previous definition here
2023-11-27T19:06:53.5648441Z    34 |   enum radiator_enum {
2023-11-27T19:06:53.5648970Z       |        ^~~~~~~~~~~~~
2023-11-27T19:06:53.5651138Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:41:22: error: redefinition of 'std::string richgeo::RadiatorName(int, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:53.5653488Z    41 |   static std::string RadiatorName(int num, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:53.5654495Z       |                      ^~~~~~~~~~~~
2023-11-27T19:06:53.5656749Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:41:22: note: 'std::string richgeo::RadiatorName(int, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:53.5659163Z    41 |   static std::string RadiatorName(int num, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:53.5660728Z       |                      ^~~~~~~~~~~~
2023-11-27T19:06:53.5663104Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:52:14: error: redefinition of 'int richgeo::RadiatorNum(std::string, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:53.5665911Z    52 |   static int RadiatorNum(std::string name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:53.5666969Z       |              ^~~~~~~~~~~
2023-11-27T19:06:53.5669249Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:52:14: note: 'int richgeo::RadiatorNum(std::string, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:53.5671634Z    52 |   static int RadiatorNum(std::string name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:53.5672659Z       |              ^~~~~~~~~~~
2023-11-27T19:06:53.5674885Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:62:14: error: redefinition of 'int richgeo::RadiatorNum(const char*, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:53.5677249Z    62 |   static int RadiatorNum(const char * name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:53.5678268Z       |              ^~~~~~~~~~~
2023-11-27T19:06:53.5680435Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:62:14: note: 'int richgeo::RadiatorNum(const char*, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:53.5682850Z    62 |   static int RadiatorNum(const char * name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:53.5683932Z       |              ^~~~~~~~~~~
2023-11-27T19:06:53.5686534Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:67:14: error: redefinition of 'int richgeo::ParseRadiatorName(std::string, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:53.5688950Z    67 |   static int ParseRadiatorName(std::string input, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:53.5690037Z       |              ^~~~~~~~~~~~~~~~~
2023-11-27T19:06:53.5692371Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:67:14: note: 'int richgeo::ParseRadiatorName(std::string, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:53.5694925Z    67 |   static int ParseRadiatorName(std::string input, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:53.5696042Z       |              ^~~~~~~~~~~~~~~~~
2023-11-27T19:06:59.2859065Z In file included from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/ReadoutGeo.cc:26:
2023-11-27T19:06:59.2862010Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:20:9: error: redefinition of 'class richgeo::Sensor'
2023-11-27T19:06:59.2863120Z    20 |   class Sensor {
2023-11-27T19:06:59.2863455Z       |         ^~~~~~
2023-11-27T19:06:59.2864365Z In file included from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/ReadoutGeo.h:24,
2023-11-27T19:06:59.2865687Z                  from /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/ReadoutGeo.cc:6:
2023-11-27T19:06:59.2867314Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:20:9: note: previous definition of 'class richgeo::Sensor'
2023-11-27T19:06:59.2868254Z    20 |   class Sensor {
2023-11-27T19:06:59.2868529Z       |         ^~~~~~
2023-11-27T19:06:59.2869542Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:34:8: error: multiple definition of 'enum richgeo::radiator_enum'
2023-11-27T19:06:59.2870624Z    34 |   enum radiator_enum {
2023-11-27T19:06:59.2871111Z       |        ^~~~~~~~~~~~~
2023-11-27T19:06:59.2872477Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:34:8: note: previous definition here
2023-11-27T19:06:59.2874220Z    34 |   enum radiator_enum {
2023-11-27T19:06:59.2874626Z       |        ^~~~~~~~~~~~~
2023-11-27T19:06:59.2875865Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:41:22: error: redefinition of 'std::string richgeo::RadiatorName(int, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:59.2877405Z    41 |   static std::string RadiatorName(int num, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:59.2877994Z       |                      ^~~~~~~~~~~~
2023-11-27T19:06:59.2879205Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:41:22: note: 'std::string richgeo::RadiatorName(int, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:59.2880465Z    41 |   static std::string RadiatorName(int num, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:59.2881021Z       |                      ^~~~~~~~~~~~
2023-11-27T19:06:59.2882232Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:52:14: error: redefinition of 'int richgeo::RadiatorNum(std::string, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:59.2883491Z    52 |   static int RadiatorNum(std::string name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:59.2884048Z       |              ^~~~~~~~~~~
2023-11-27T19:06:59.2885240Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:52:14: note: 'int richgeo::RadiatorNum(std::string, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:59.2887593Z    52 |   static int RadiatorNum(std::string name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:59.2888518Z       |              ^~~~~~~~~~~
2023-11-27T19:06:59.2890570Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:62:14: error: redefinition of 'int richgeo::RadiatorNum(const char*, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:59.2892774Z    62 |   static int RadiatorNum(const char * name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:59.2893712Z       |              ^~~~~~~~~~~
2023-11-27T19:06:59.2895763Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:62:14: note: 'int richgeo::RadiatorNum(const char*, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:59.2897164Z    62 |   static int RadiatorNum(const char * name, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:59.2897724Z       |              ^~~~~~~~~~~
2023-11-27T19:06:59.2898940Z /home/runner/work/drich-dev/drich-dev/prefix/include/services/geometry/richgeo/RichGeo.h:67:14: error: redefinition of 'int richgeo::ParseRadiatorName(std::string, std::shared_ptr<spdlog::logger>)'
2023-11-27T19:06:59.2900269Z    67 |   static int ParseRadiatorName(std::string input, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:59.2900855Z       |              ^~~~~~~~~~~~~~~~~
2023-11-27T19:06:59.2902081Z /home/runner/work/drich-dev/drich-dev/EICrecon/src/services/geometry/richgeo/RichGeo.h:67:14: note: 'int richgeo::ParseRadiatorName(std::string, std::shared_ptr<spdlog::logger>)' previously defined here
2023-11-27T19:06:59.2903405Z    67 |   static int ParseRadiatorName(std::string input, std::shared_ptr<spdlog::logger> m_log = nullptr) {
2023-11-27T19:06:59.2903994Z       |              ^~~~~~~~~~~~~~~~~
2023-11-27T19:07:01.5378096Z make: *** [Makefile:61: lib/libRichGeo.so] Error 1
@wdconinc
Copy link
Contributor

We should be working towards integrating more of this drich-dev into the container CI so we figure out earlier when stuff is going to break. If I were to guess, this is due to -std=c++20 and the code here not being compliant, which is surprising since EICrecon is C++20 compliant. Is this using a submodule or an older copy?

@c-dilks
Copy link
Member Author

c-dilks commented Nov 27, 2023

It uses everything on main. The Makefile builds parts of EICrecon's richgeo into a local shared library, to be used with executables built from src/*.cpp. I can try -std=c++20 here.

I think the only jobs I'd want moved into the container CI are

  • test_pixel_gaps, which runs src/test_pixel_gap_cuts.cpp, a "benchmark" that depends on classes in the richgeo EICrecon service
  • test_track_propagation, which runs scripts/test_tracks.C.. not sure why we haven't moved this to reconstruction_benchmarks

We also run npsim with the famous --part.userParticleHandler='' hack so that the optical photons appear in MCParticles... otherwise we can't see certain benchmarks (this would apply if passing npsim artifacts to reconstruction_benchmarks)

Everything else here is wrappers and local (not for CI) studies.

@bleaktwig
Copy link

I cannot replicate the problem. If I build everything as is specified on the README (including --branch v4.0.0 when building EDM4eic), I can make dRICH without any problem.

@c-dilks
Copy link
Member Author

c-dilks commented Nov 28, 2023

Interesting... so this may just be a CI problem then.

Possible resolution discussed in #116.

@chchatte92
Copy link
Member

Sorry colleagues, I just came back from a beam test. I have not managed to follow the whole conversations. But, I see I have assignments. I will look into it.
Cheers,
Chandra

@c-dilks
Copy link
Member Author

c-dilks commented Dec 14, 2023

Seems that make works now, but test_pixel_gap_cuts won't, since we no longer can build richgeo independently. The fix would be to build test_pixel_gap_cuts against EICrecon's version of richgeo.

@chchatte92
Copy link
Member

Hi @c-dilks , day before yesterday, I was able to make everything.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants