key4hep/k4Clue

Move to nvcc 11.2

Closed this issue · 1 comments

Running

/usr/local/cuda-11.2/bin/nvcc -ccbin g++ -I include -I cupla/include -I cupla/alpaka/include -m64 --expt-relaxed-constexpr -w -Xcompiler -std=c++14 -x cu -DFOR_CUDA -DALPAKA_ACC_GPU_CUDA_ENABLED=1 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_75,code=sm_75 -DUSE_CUPLA -o mainCuplaCUDA.o -c src/main.cc

gives the following error

cupla/alpaka/include/alpaka/core/Concepts.hpp:81:33: error: '__T0' was not declared in this scope
                 static_assert(std::is_base_of<type, TDerived>::value, "The type implementing the concept has to be a publicly accessible base class!");
                                 ^~~~
cupla/alpaka/include/alpaka/core/Concepts.hpp:81:33: note: suggested alternative: '__y0'
                 static_assert(std::is_base_of<type, TDerived>::value, "The type implementing the concept has to be a publicly accessible base class!");
                                 ^~~~
                                 __y0
cupla/alpaka/include/alpaka/core/Concepts.hpp:81:47: error: template argument 1 is invalid
                 static_assert(std::is_base_of<type, TDerived>::value, "The type implementing the concept has to be a publicly accessible base class!");
                                               ^

Usually these problems are related to using an old version of alpaca/cupla.
It could be solved with updating cupla to https://github.com/alpaka-group/cupla/tree/release-0.3.0-rc1 or to https://github.com/alpaka-group/cupla/tree/dev. Alternatively try to ask key4hep (@@vavolkl) their status in including cupla and use theirs.