Why do things using CUDA often require older versions of compilers?
E.g. ccminer. Try to make it, but it finds my modern gcc or clang too modern :(
E.g. ccminer. Try to make it, but it finds my modern gcc or clang too modern :(
This requires nvcc and the device compiler to have exact knowledge of how the host compiler compiles every single construct (thing e.g. about alignment and padding in complex structures), and they must at least be able to parse the syntax of the host include files (which e.g. fails if the include files have C++11 syntax, but the device compiler only knows how to parse C++98).