-
Notifications
You must be signed in to change notification settings - Fork 17
Description
Greetings
I tried to install Mirheo in a device with CUDA 10.1.0 installed.
According to the docs, the system should meet the requirements for the package, but I get the following error after I run make install :
nvcc fatal : Value 'c++17' is not defined for option 'std'
These are the compilers that the system uses by default. And I confirm that the rest of required libraries are properly installed.
- gcc/g++ :
7.3.1 20180303 (Red Hat 7.3.1-5)
- nvcc :
Cuda compilation tools, release 10.1, V10.1.243
The workaround that I found is using the previous release version ( v1.6.0 )
git clone -b v1.6.0 --recursive https://github.com/cselab/Mirheo.git
The error regarding c++17 dissappears with it, but then is replaced by the following error:
[ 51%] Building CXX object src/mirheo/core/CMakeFiles/mirheoCore.dir/pvs/packers/rods.cpp.o
[ 51%] Building CXX object src/mirheo/core/CMakeFiles/mirheoCore.dir/pvs/particle_vector.cpp.o
In file included from /opt/rh/devtoolset-7/root/usr/include/c++/7/string:52:0,
from /home/testuser/Mirheo/src/mirheo/core/utils/file_wrapper.h:5,
from/home/testuser/Mirheo/src/mirheo/core/logger.h:4,
from /home/testuser/Mirheo/src/mirheo/core/containers.h:4,
from /home/testuser/Mirheo/src/mirheo/core/pvs/particle_vector.h:4,
from /home/testuser/Mirheo/src/mirheo/core/pvs/particle_vector.cpp:2:
/opt/rh/devtoolset-7/root/usr/include/c++/7/bits/basic_string.h: In instantiation of ‘static _CharT* std::basic_string<_CharT, _Traits, _Alloc>::_S_construct_aux(_InIterator, _InIterator, const _Alloc&, std::__false_type) [with _InIterator = std::basic_string; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]’:
/opt/rh/devtoolset-7/root/usr/include/c++/7/bits/basic_string.h:5054:27: required from ‘static _CharT* std::basic_string<_CharT, _Traits, _Alloc>::_S_construct(_InIterator, _InIterator, const _Alloc&) [with _InIterator = std::basic_string; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]’
/opt/rh/devtoolset-7/root/usr/include/c++/7/bits/basic_string.tcc:679:31: required from ‘std::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [with _InputIterator = std::basic_string; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]’
/home/testuser/Mirheo/src/mirheo/core/pvs/particle_vector.cpp:210:97: required from here
/opt/rh/devtoolset-7/root/usr/include/c++/7/bits/basic_string.h:5032:76: error: no type named ‘iterator_category’ in ‘struct std::iterator_traits<std::basic_string >’
typedef typename iterator_traits<_InIterator>::iterator_category _Tag;
^~~~
make[3]: *** [src/mirheo/core/CMakeFiles/mirheoCore.dir/build.make:1174: src/mirheo/core/CMakeFiles/mirheoCore.dir/pvs/particle_vector.cpp.o] Error 1
make[3]: Leaving directory '/home/testuser/Mirheo/build'
make[2]: *** [CMakeFiles/Makefile2:1125: src/mirheo/core/CMakeFiles/mirheoCore.dir/all] Error 2
make[2]: Leaving directory '/home/testuser/Mirheo/build'
make[1]: *** [Makefile:149: all] Error 2
make[1]: Leaving directory '/home/testuser/Mirheo/build'
make: *** [Makefile:10: build] Error 2
Is there any solution ? Or if it was already fixed, is the associated commit somewhere before or after the migration to C++17 ??
Thank you in advance for the hard work !!