You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There is an issue when compiling Colmap's source code on Fedora 39.
Fedora-39 comes with the latest gcc compiler (v13).
However, nvcc (needed to compile the cuda soure code) needs v11.
Two possible solutions. Neither works:
Install gcc v11 separately and compile the entire source tree with this compiler --> problem when linking to system libraries that are compiled with gcc v13 and have a different GLIBCXX version. (errors like /usr/bin/ld: /usr/lib64/libgmpxx.so: undefined reference to `std::ios_base_library_init()@GLIBCXX_3.4.32')
Try compiling everything (including the cuda code) with gcc v13 (using -allow-unsupported-compiler) --> does not work. Errors when compiling cuda code like: /usr/include/c++/13/bits/stl_vector.h:151:174: error: use of deleted function ‘constexpr std::_Vector_base<float, std::allocator >::_Vector_impl_data::_Vector_impl_data(const std::_Vector_base<float, std::allocator >::_Vector_impl_data&)’
/colmap/mvs/patch_match_cuda.cu:1335:38: required from here
/usr/include/c++/13/bits/alloc_traits.h:538:48: error: call of overloaded ‘forward<const int&>(const int&)’ is ambiguous
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
There is an issue when compiling Colmap's source code on Fedora 39.
Fedora-39 comes with the latest gcc compiler (v13).
However, nvcc (needed to compile the cuda soure code) needs v11.
Two possible solutions. Neither works:
Install gcc v11 separately and compile the entire source tree with this compiler --> problem when linking to system libraries that are compiled with gcc v13 and have a different GLIBCXX version. (errors like /usr/bin/ld: /usr/lib64/libgmpxx.so: undefined reference to `std::ios_base_library_init()@GLIBCXX_3.4.32')
Try compiling everything (including the cuda code) with gcc v13 (using -allow-unsupported-compiler) --> does not work. Errors when compiling cuda code like: /usr/include/c++/13/bits/stl_vector.h:151:174: error: use of deleted function ‘constexpr std::_Vector_base<float, std::allocator >::_Vector_impl_data::_Vector_impl_data(const std::_Vector_base<float, std::allocator >::_Vector_impl_data&)’
/colmap/mvs/patch_match_cuda.cu:1335:38: required from here
/usr/include/c++/13/bits/alloc_traits.h:538:48: error: call of overloaded ‘forward<const int&>(const int&)’ is ambiguous
Tried with cuda versions 11.7 and 12.3
Beta Was this translation helpful? Give feedback.
All reactions