nest / nest-gpu

NEST GPU
https://nest-gpu.readthedocs.io
GNU General Public License v2.0
19 stars 12 forks source link

Which cmake version to use? Can't compile/install. #61

Open russelljjarvis opened 1 year ago

russelljjarvis commented 1 year ago

Hi there,

I am trying to compile Nest-gpu to experiment with calling it from Julia-lang with

https://github.com/JuliaInterop/CxxWrap.jl

However I am finding that I can not basically install nest-gpu. I suspect I am just using the wrong compiler versions.

Which cmake versions have you had success with?

@pop-os:~/git/nest-gpu$ cmake -DCMAKE_INSTALL_PREFIX:PATH=`pwd` .

CMake Warning at cmake/ColorMessages.cmake:49 (message): Warning: Could not locate Python ABI, using shared libraries and header file instead. Please clear your CMake cache and build folder and verify that CMake is up-to-date (3.17+). Call Stack (most recent call first): cmake/ColorMessages.cmake:60 (print) cmake/CheckIncludesSymbols.cmake:59 (printWarning) CMakeLists.txt:100 (include)

-- Info: Host triple: x86_64-pc-linux -- Info: Target triple: x86_64-pc-linux -- Info: -- NEST GPU version: main@a90bf75


NEST GPU Configuration Summary

Target System : Linux Cross Compiling : FALSE C compiler : GNU 11.3.0 (/usr/bin/cc) C compiler flags : -fopenmp -O3 -Wall C++ compiler : GNU 11.3.0 (/usr/bin/c++) C++ compiler flags : -fopenmp -O3 -Wall CUDA compiler : NVIDIA 11.5.119 (/usr/bin/nvcc) CUDA compiler flags : --maxrregcount=55 --compiler-options=' -O3 -Wall' Build dynamic : ON

Python bindings : Yes (Python 3.10.6: /usr/bin/python3.10) Includes : /usr/include/python3.10 Libraries : /usr/lib/x86_64-linux-gnu/libpython3.10.so MPI4Py : Yes (/usr/lib/python3/dist-packages/mpi4py/include)

Use threading : Yes (OpenMP: -fopenmp)

Use libltdl : No

Use MPI : Yes (MPI: /usr/bin/mpicxx) Includes : /usr/lib/x86_64-linux-gnu/openmpi/include;/usr/lib/x86_64-linux-gnu/openmpi/include/openmpi Libraries : /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi_cxx.so;/usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so Launcher : /usr/bin/mpiexec -n

For details on setting specific flags for your MPI launcher command, see the CMake documentation at https://cmake.org/cmake/help/latest/module/FindMPI.html


The NEST GPU executable will be installed to: /git/nest-gpu/bin/

NEST dynamic libraries and user modules will be installed to: /git/nest-gpu/lib/nest/

Documentation and examples will be installed to: /git/nest-gpu/share/doc/nestgpu/

PyNEST will be installed to: /git/nest-gpu/lib/python3.10/site-packages

To set necessary environment variables, add the following line to your ~/.bashrc : sourcegit/nest-gpu/bin/nestgpu_vars.sh


You can now build and install NEST GPU with make make install make installcheck

If you experience problems with the installation or the use of NEST GPU, go to https://nest-gpu.readthedocs.io/en/latest/community.html to find out how to join the user mailing list.

-- Configuring done -- Generating done -- Build files have been written to: /home/rjjarvis/git/nest-gpu pop-os:~/git/nest-gpu$ make install Consolidate compiler generated dependencies of target nestgpukernel [ 2%] Building CUDA object src/CMakeFiles/nestgpukernel.dir/aeif_cond_alpha.cu.o /usr/include/c++/11/bits/std_function.h:435:145: error: parameter packs not expanded with ‘...’: 435 | function(_Functor&& f) | ^ /usr/include/c++/11/bits/std_function.h:435:145: note: ‘_ArgTypes’ /usr/include/c++/11/bits/std_function.h:530:146: error: parameter packs not expanded with ‘...’: 530 | operator=(_Functor&& f) | ^ /usr/include/c++/11/bits/std_function.h:530:146: note: ‘_ArgTypes’ make[2]: [src/CMakeFiles/nestgpukernel.dir/build.make:76: src/CMakeFiles/nestgpukernel.dir/aeif_cond_alpha.cu.o] Error 1 make[1]: [CMakeFiles/Makefile2:152: src/CMakeFiles/nestgpukernel.dir/all] Error 2 make: *** [Makefile:136: all] Error 2 rjjarvis@pop-os:~/git/nest-gpu$ cmake --version cmake version 3.22.1

CMake suite maintained and supported by Kitware (kitware.com/cmake).