Gromacs Installation fails at NVCC

GROMACS version: 2019.3 and 2020.2
GROMACS modification: No
Hello all, I really tried my best to figure this out by myself before posting. My installation is hanging during the make step.

the make proceeds great until Building NVCC

[ 19%] Building CXX object src/gromacs/CMakeFiles/libgromacs_external.dir//external/thread_mpi/src/scan.cpp.o
[ 19%] Building CXX object src/gromacs/CMakeFiles/libgromacs_external.dir/
[ 19%] Building CXX object src/gromacs/CMakeFiles/libgromacs_external.dir/__/external/thread_mpi/src/once.cpp.o
[ 20%] Built target libgromacs_external
[ 22%] Built target tng_io_zlib
[ 22%] Generating baseversion-gen.cpp
[ 22%] Building NVCC (Device) object src/gromacs/CMakeFiles/libgromacs.dir/mdlib/nbnxn_cuda/
/home/drewaight/anaconda3/x86_64-conda_cos6-linux-gnu/include/c++/7.3.0/type_traits(177): error: “conjunction_v” is not a function or static data member

I am sometimes confused why anaconda takes over and makes their use their compilers, but I have tried solving the problem with


and changing the CUDA_HOST_COMPILER in the CMakeCache.txt to other locations of gcc and g++ but the error is at the same place every time, which as I understand might be an incompatibility between gcc and nvcc (im not really sure what this means actually) Anyway I thought I was good with computers until I had to try to debug a failing cmake install. Can anyone help to point me in the right direction? Thanks so much for your help



the way you are configuring the installation means that CMake will pick
up a version of the nvcc tools by default that might not be what you
have intended.

Can you try to build in an environment where you haven’t loaded the
anaconda tools?

Also, can you please paste the terminal output from a clean CMake
configuration run and the resulting CMakeCache.txt file?

Then we can try to find out where the detection gets the wrong compiler




conda deactivate

then follow the regular instructions, no special flags it all compiles (2019 and 2020 versions) perfectly.

Well I learned something very valuable today. After all this time I didn’t realize that you could deactivate the (base) anaconda environment, and thus escape the anaconda environment all together. I feel pretty silly given all the hours i spent on this problem. This answers a longstanding question I also had about Anaconda, when managing python packages (pip conda) its very necessary, but when installing system programs (through makefiles or cmake) its probably best to deactivate out of it and let the system tools run the compiling. Im suprised it took me so long to discover this.

Thanks to pbauer, I would never have thought of this without your small nudge.