Open mariusrueve opened 7 months ago
Thanks for reporting this - looks like we need to upgrade dependencies (Assimp, TBB). Happy to accept PRs for this.
I had same issue for the headless build. My cmake command:
cmake -DENABLE_HEADLESS_RENDERING=ON -DBUILD_GUI=OFF -DUSE_SYSTEM_GLEW=OFF -DUSE_SYSTEM_GLFW=OFF -DPYTHON_EXECUTABLE=$(which python) -DUSE_SYSTEM_ASSIMP=ON ..
I fixed it by changing file 3rdparty/mkl/tbb.cmake
(added CMAKE_CXX_FLAGS
):
CMAKE_ARGS
-DCMAKE_CXX_FLAGS=-fpermissive -Wchanges-meaning -Wno-free-nonheap-object
-DCMAKE_INSTALL_PREFIX=${MKL_INSTALL_PREFIX}
and root file CMakeLists.txt
(first macro after cmake_minimum_required
):
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive -Wchanges-meaning -Wno-free-nonheap-object")
Needs update TBB -> oneTBB
Same issue with Ubuntu 22.04. It works well for GCC 11 but the error occurs with GCC 13.
[ 51%] Building CXX object code/CMakeFiles/assimp.dir/AssetLib/Obj/ObjFileParser.cpp.o
In file included from /usr/include/c++/13/bits/specfun.h:43,
from /usr/include/c++/13/cmath:3699,
from /home/ubuntu/dev/summer_robotics/core_vision/pkgs/open3d/open3d-src/build-release/assimp/src/ext_assimp/include/assimp/vector2.h:53,
from /home/ubuntu/dev/summer_robotics/core_vision/pkgs/open3d/open3d-src/build-release/assimp/src/ext_assimp/include/assimp/types.h:64,
from /home/ubuntu/dev/summer_robotics/core_vision/pkgs/open3d/open3d-src/build-release/assimp/src/ext_assimp/include/assimp/IOStream.hpp:53,
from /home/ubuntu/dev/summer_robotics/core_vision/pkgs/open3d/open3d-src/build-release/assimp/src/ext_assimp/include/assimp/DefaultIOStream.h:55,
from /home/ubuntu/dev/summer_robotics/core_vision/pkgs/open3d/open3d-src/build-release/assimp/src/ext_assimp/include/assimp/Exceptional.h:49,
from /home/ubuntu/dev/summer_robotics/core_vision/pkgs/open3d/open3d-src/build-release/assimp/src/ext_assimp/include/assimp/BaseImporter.h:52,
from /home/ubuntu/dev/summer_robotics/core_vision/pkgs/open3d/open3d-src/build-release/assimp/src/ext_assimp/code/AssetLib/MDL/MDLLoader.h:50,
from /home/ubuntu/dev/summer_robotics/core_vision/pkgs/open3d/open3d-src/build-release/assimp/src/ext_assimp/code/AssetLib/MDL/MDLLoader.cpp:51:
In static member function ‘static _Up* std::__copy_move<_IsMove, true, std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp = long unsigned int; _Up = long unsigned int; bool _IsMove = false]’,
inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = false; _II = long unsigned int*; _OI = long unsigned int*]’ at /usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove = false; _II = long unsigned int*; _OI = long unsigned int*]’ at /usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = false; _II = long unsigned int*; _OI = long unsigned int*]’ at /usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘_OI std::copy(_II, _II, _OI) [with _II = long unsigned int*; _OI = long unsigned int*]’ at /usr/include/c++/13/bits/stl_algobase.h:633:7,
inlined from ‘std::vector<bool, _Alloc>::iterator std::vector<bool, _Alloc>::_M_copy_aligned(const_iterator, const_iterator, iterator) [with _Alloc = std::allocator<bool>]’ at /usr/include/c++/13/bits/stl_bvector.h:1305:28,
inlined from ‘void std::vector<bool, _Alloc>::_M_reallocate(size_type) [with _Alloc = std::allocator<bool>]’ at /usr/include/c++/13/bits/vector.tcc:851:40,
inlined from ‘void std::vector<bool, _Alloc>::reserve(size_type) [with _Alloc = std::allocator<bool>]’ at /usr/include/c++/13/bits/stl_bvector.h:1093:17,
inlined from ‘Assimp::MDL::IntSharedData_MDL7::IntSharedData_MDL7()’ at /home/ubuntu/dev/summer_robotics/core_vision/pkgs/open3d/open3d-src/build-release/assimp/src/ext_assimp/code/AssetLib/MDL/MDLFileData.h:879:32,
inlined from ‘void Assimp::MDLImporter::InternReadFile_3DGS_MDL7()’ at /home/ubuntu/dev/summer_robotics/core_vision/pkgs/open3d/open3d-src/build-release/assimp/src/ext_assimp/code/AssetLib/MDL/MDLLoader.cpp:1351:29:
/usr/include/c++/13/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 8 is out of the bounds [0, 8] [-Werror=array-bounds=]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
gmake[5]: *** [code/CMakeFiles/assimp.dir/build.make:1504: code/CMakeFiles/assimp.dir/AssetLib/MDL/MDLLoader.cpp.o] Error 1
gmake[5]: *** Waiting for unfinished jobs....
gmake[4]: *** [CMakeFiles/Makefile2:169: code/CMakeFiles/assimp.dir/all] Error 2
gmake[3]: *** [Makefile:136: all] Error 2
gmake[2]: *** [CMakeFiles/ext_assimp.dir/build.make:86: assimp/src/ext_assimp-stamp/ext_assimp-build] Error 2
gmake[1]: *** [CMakeFiles/Makefile2:902: CMakeFiles/ext_assimp.dir/all] Error 2
gmake: *** [Makefile:156: all] Error 2
Checklist
main
branch).Steps to reproduce the issue
I first cloned Open3D by:
Then, I build Open3D (on Ubuntu 23.10) with:
Error message
Open3D, Python and System information
Additional information
No response