Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot install Open3D Python library when building from source (Pytorch 2.1.0+cu121 & Python 3.10) #6552

Open
3 tasks done
kidpaul94 opened this issue Dec 27, 2023 · 4 comments
Labels
build/install Build or installation issue

Comments

@kidpaul94
Copy link

Checklist

Steps to reproduce the issue

I first cloned Open3D by:

git clone https://github.com/isl-org/Open3D.git
cd Open3D

Then, I build Open3D (on Ubuntu 22.04, with CUDA 12.1) with:

mkdir build
cd build
git clone https://github.com/isl-org/Open3D-ML.git
cmake -DBUILD_CUDA_MODULE=ON -DGLIBCXX_USE_CXX11_ABI=OFF  -DBUILD_PYTORCH_OPS=ON -DBUNDLE_OPEN3D_ML=ON -DOPEN3D_ML_ROOT=Open3D-ML  ..


After changing CMakeLists.txt in Open3D folder so that I can use C++17 to doing make -j$(nproc),

make -j$(nproc)
sudo make install
sudo make python-package

Error message

[  0%] Performing update step for 'open3d_ml'
HEAD is now at 1d1fe7a boundingbox.py: Changed np.int to np.int32 to make compatible with new versions of numpy (#624)
[  0%] No patch step for 'open3d_ml'
[  1%] No configure step for 'open3d_ml'
[  1%] No build step for 'open3d_ml'
[  1%] No install step for 'open3d_ml'
[  1%] Completed 'open3d_ml'
[  1%] Built target open3d_ml
[  1%] Built target copy_html_dir
[  1%] Built target ext_assimp
[  2%] Built target ext_cutlass
[  3%] Built target ext_eigen
[  3%] Built target ext_nanoflann
[  3%] Built target 3rdparty_glew
[  3%] Built target ext_turbojpeg
[  4%] Built target ext_jsoncpp
[  5%] Built target 3rdparty_liblzf
[  6%] Built target ext_boringssl
[  7%] Built target ext_curl
[  8%] Built target ext_zlib
[  8%] Built target ext_libpng
[  8%] Built target 3rdparty_rply
[  8%] Built target 3rdparty_tinyfiledialogs
[ 10%] Built target ext_tinygltf
[ 11%] Built target ext_tinyobjloader
[ 12%] Built target ext_qhull
[ 13%] Built target 3rdparty_qhull_r
[ 15%] Built target 3rdparty_qhullcpp
[ 15%] Built target ext_fmt
[ 16%] Built target ext_poisson
[ 17%] Built target ext_imgui
[ 17%] Built target 3rdparty_imgui
[ 18%] Built target ext_filament
[ 18%] Built target ext_zeromq
[ 18%] Built target ext_cppzmq
[ 20%] Built target ext_msgpack-c
[ 21%] Built target ext_vtk
[ 21%] Built target ext_directxmath
[ 22%] Built target ext_directxheaders
[ 23%] Built target ext_uvatlas
[ 24%] Built target ext_tbb
[ 25%] Built target ext_parallelstl
[ 26%] Built target ext_mkl_include
[ 27%] Built target ext_mkl
[ 28%] Built target ext_ippicv
[ 28%] Built target ext_stdgpu
[ 30%] Built target ext_embree
[ 31%] Built target ext_webrtc
[ 31%] Built target ext_webrtc_all
[ 32%] Built target ext_civetweb
[ 34%] Built target glfw
[ 35%] Built target webrtc_server
[ 35%] Built target camera
[ 45%] Built target core
[ 50%] Built target data
[ 53%] Built target geometry
[ 56%] Built target io
[ 56%] Built target ml_contrib
[ 58%] Built target pipelines
[ 60%] Built target tgeometry
[ 62%] Built target tgeometry_kernel
[ 63%] Built target tio
[ 64%] Built target tpipelines
[ 65%] Built target tpipelines_kernel
[ 67%] Built target utility
[ 68%] Built target ShaderLinker
[ 68%] Built target ShaderEncoder
[ 71%] Built target shader
[ 77%] Built target visualization
[ 80%] Built target materials
[ 84%] Built target GUI
[ 84%] Built target Open3D
[ 91%] Built target open3d_torch_ops
[100%] Built target pybind
[100%] Generating python ops.py and return_types.py
Traceback (most recent call last):
  File "/home/hojun/Work/Open3D/cpp/pybind/generate_torch_ops_wrapper.py", line 32, in <module>
    import torch
ModuleNotFoundError: No module named 'torch'
make[3]: *** [cpp/pybind/CMakeFiles/python-package.dir/build.make:75: lib/ml/torch/python/ops.py] Error 1
make[2]: *** [CMakeFiles/Makefile2:4147: cpp/pybind/CMakeFiles/python-package.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:4154: cpp/pybind/CMakeFiles/python-package.dir/rule] Error 2
make: *** [Makefile:1242: python-package] Error 2

Open3D, Python and System information

- Operating system: Ubuntu 22.04
- Python version: Python 3.10.12
- Open3D version: output from python: latest
- System architecture: x86
- Is this a remote workstation?: no
- How did you install Open3D?: build from source
- Compiler version (if built from source): gcc 11.4.0 / clang 14.0.0

Additional information

No response

@kidpaul94 kidpaul94 added the build/install Build or installation issue label Dec 27, 2023
@shoaibahmed
Copy link

PyTorch 2.0 is not yet supported by Open3D (you'll have to install PyTorch 1.13 unfortunately). See the discussion on the Python 3.11 PR here which also mentions migration steps to PyTorch 2.0: #6288

@ssheorey
Copy link
Member

ssheorey commented Jan 5, 2024

PyTorch 2.0 support is now available in Open3D v0.18.0. For PyTorch 2.1, you still need to build from source.

The error looks to be that you don't have pytorch installed, or perhaps are in a wrong virtual env.

@jiapei100
Copy link

jiapei100 commented May 9, 2024

Yeah... The error seems to be from DGLIBCXX_USE_CXX11_ABI OFF for PyTorch, so we CANNOT turn ON DGLIBCXX_USE_CXX11_ABI while building Open3D-0.18.0.

CMake Error at 3rdparty/cmake/FindPytorch.cmake:108 (message):
   PyTorch and Open3D ABI mismatch: False != ON.

   Please use -DGLIBCXX_USE_CXX11_ABI=OFF in the cmake config command to
   change the Open3D ABI.
 Call Stack (most recent call first):
   cpp/open3d/ml/pytorch/CMakeLists.txt:7 (find_package)

 Configuring incomplete, errors occurred!

If I turned OFF DGLIBCXX_USE_CXX11_ABI while building Open3D-0.18.0, I got:

[ 69%] Building CUDA object cpp/open3d/core/CMakeFiles/core.dir/nns/KnnSearchOps.cu.o
cd ....../Open3D/build/cpp/open3d/core && /usr/local/cuda/bin/nvcc -forward-unknown-to-host-compiler -DBUILD_CUDA_MODULE -DBUILD_GUI -DBUILD_ISPC_MODULE -DENABLE_CACHED_CUDA_MANAGER -DFMT_HEADER_ONLY=0 -DFMT_STRING_ALIAS=1 -DFMT_USE_WINDOWS_H=0 -DOPEN3D_CUDA_COMPILER_ID=\"NVIDIA\" -DOPEN3D_CUDA_COMPILER_VERSION=\"12.3.107\" -DOPEN3D_CXX_COMPILER_ID=\"GNU\" -DOPEN3D_CXX_COMPILER_VERSION=\"12.3.0\" -DOPEN3D_CXX_STANDARD=\"14\" -DOPEN3D_ENABLE_DLL_EXPORTS -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DUNIX -DWITH_IPPICV -DZMQ_STATIC -D_GLIBCXX_USE_CXX11_ABI=0 -D__TBB_LIB_NAME=tbb_static --options-file CMakeFiles/core.dir/includes_CUDA.rsp -O3 -DNDEBUG -std=c++17 "--generate-code=arch=compute_86,code=[sm_86]" -Xcompiler=-fPIC --Werror cross-execution-space-call,deprecated-declarations --Werror all-warnings --Werror ext-lambda-captures-this --expt-relaxed-constexpr --diag-suppress 2809 --Werror reorder -Xcompiler -Wall,-Wextra,-Werror,-Wno-unused-parameter --expt-extended-lambda -MD -MT cpp/open3d/core/CMakeFiles/core.dir/nns/KnnSearchOps.cu.o -MF CMakeFiles/core.dir/nns/KnnSearchOps.cu.o.d -x cu -c ....../Open3D/cpp/open3d/core/nns/KnnSearchOps.cu -o CMakeFiles/core.dir/nns/KnnSearchOps.cu.o
In file included from /usr/include/x86_64-linux-gnu/c++/12/bits/c++allocator.h:33,
                 from /usr/include/c++/12/bits/allocator.h:46,
                 from /usr/include/c++/12/vector:61,
                 from ....../Open3D/cpp/open3d/core/nns/NanoFlannIndex.h:10,
                 from ....../Open3D/cpp/open3d/core/nns/NanoFlannIndex.cpp:8:
In member function ‘void std::__new_allocator<_Tp>::deallocate(_Tp*, size_type) [with _Tp = float]’,
    inlined from ‘static void std::allocator_traits<std::allocator<_Tp1> >::deallocate(allocator_type&, pointer, size_type) [with _Tp = float]’ at /usr/include/c++/12/bits/alloc_traits.h:496:23,
    inlined from ‘void std::_Vector_base<_Tp, _Alloc>::_M_deallocate(pointer, std::size_t) [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:387:19,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:366:15,
    inlined from ‘std::vector<_Tp, _Alloc>::~vector() [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:735:7,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const float*, const float*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:126:5,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, const float*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:169:33: error: ‘void operator delete(void*, std::size_t)’ called on pointer ‘<unknown>’ with nonzero offset [1, 9223372036854775804] [-Werror=free-nonheap-object]
  169 |         _GLIBCXX_OPERATOR_DELETE(_GLIBCXX_SIZED_DEALLOC(__p, __n));
      |                                 ^
In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = float]’,
    inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = float]’ at /usr/include/c++/12/bits/alloc_traits.h:464:28,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::pointer std::_Vector_base<_Tp, _Alloc>::_M_allocate(std::size_t) [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:378:33,
    inlined from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_ForwardIterator, _ForwardIterator, std::forward_iterator_tag) [with _ForwardIterator = const float*; _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:1689:25,
    inlined from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = const float*; <template-parameter-2-2> = void; _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:708:23,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const float*, const float*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:123:24,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, const float*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:148:55: note: returned from ‘void* operator new(std::size_t)’
  148 |         return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
      |                                                       ^
In member function ‘void std::__new_allocator<_Tp>::deallocate(_Tp*, size_type) [with _Tp = float]’,
    inlined from ‘static void std::allocator_traits<std::allocator<_Tp1> >::deallocate(allocator_type&, pointer, size_type) [with _Tp = float]’ at /usr/include/c++/12/bits/alloc_traits.h:496:23,
    inlined from ‘void std::_Vector_base<_Tp, _Alloc>::_M_deallocate(pointer, std::size_t) [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:387:19,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:366:15,
    inlined from ‘std::vector<_Tp, _Alloc>::~vector() [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:735:7,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const float*, const float*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:126:5,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<float, long int, open3d::core::nns::NeighborSearchAllocator<float, long int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, const float*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, long int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:169:33: error: ‘void operator delete(void*, std::size_t)’ called on pointer ‘<unknown>’ with nonzero offset [1, 9223372036854775804] [-Werror=free-nonheap-object]
  169 |         _GLIBCXX_OPERATOR_DELETE(_GLIBCXX_SIZED_DEALLOC(__p, __n));
      |                                 ^
In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = float]’,
    inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = float]’ at /usr/include/c++/12/bits/alloc_traits.h:464:28,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::pointer std::_Vector_base<_Tp, _Alloc>::_M_allocate(std::size_t) [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:378:33,
    inlined from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_ForwardIterator, _ForwardIterator, std::forward_iterator_tag) [with _ForwardIterator = const float*; _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:1689:25,
    inlined from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = const float*; <template-parameter-2-2> = void; _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:708:23,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const float*, const float*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:123:24,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<float, long int, open3d::core::nns::NeighborSearchAllocator<float, long int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, const float*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, long int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:148:55: note: returned from ‘void* operator new(std::size_t)’
  148 |         return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
      |                                                       ^
In member function ‘void std::__new_allocator<_Tp>::deallocate(_Tp*, size_type) [with _Tp = double]’,
    inlined from ‘static void std::allocator_traits<std::allocator<_Tp1> >::deallocate(allocator_type&, pointer, size_type) [with _Tp = double]’ at /usr/include/c++/12/bits/alloc_traits.h:496:23,
    inlined from ‘void std::_Vector_base<_Tp, _Alloc>::_M_deallocate(pointer, std::size_t) [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:387:19,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:366:15,
    inlined from ‘std::vector<_Tp, _Alloc>::~vector() [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:735:7,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const double*, const double*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:126:5,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, const double*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:169:33: error: ‘void operator delete(void*, std::size_t)’ called on pointer ‘<unknown>’ with nonzero offset [1, 9223372036854775800] [-Werror=free-nonheap-object]
  169 |         _GLIBCXX_OPERATOR_DELETE(_GLIBCXX_SIZED_DEALLOC(__p, __n));
      |                                 ^
In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = double]’,
    inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = double]’ at /usr/include/c++/12/bits/alloc_traits.h:464:28,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::pointer std::_Vector_base<_Tp, _Alloc>::_M_allocate(std::size_t) [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:378:33,
    inlined from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_ForwardIterator, _ForwardIterator, std::forward_iterator_tag) [with _ForwardIterator = const double*; _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:1689:25,
    inlined from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = const double*; <template-parameter-2-2> = void; _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:708:23,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const double*, const double*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:123:24,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, const double*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:148:55: note: returned from ‘void* operator new(std::size_t)’
  148 |         return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
      |                                                       ^
In member function ‘void std::__new_allocator<_Tp>::deallocate(_Tp*, size_type) [with _Tp = double]’,
    inlined from ‘static void std::allocator_traits<std::allocator<_Tp1> >::deallocate(allocator_type&, pointer, size_type) [with _Tp = double]’ at /usr/include/c++/12/bits/alloc_traits.h:496:23,
    inlined from ‘void std::_Vector_base<_Tp, _Alloc>::_M_deallocate(pointer, std::size_t) [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:387:19,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:366:15,
    inlined from ‘std::vector<_Tp, _Alloc>::~vector() [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:735:7,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const double*, const double*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:126:5,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<double, long int, open3d::core::nns::NeighborSearchAllocator<double, long int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, const double*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, long int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:169:33: error: ‘void operator delete(void*, std::size_t)’ called on pointer ‘<unknown>’ with nonzero offset [1, 9223372036854775800] [-Werror=free-nonheap-object]
  169 |         _GLIBCXX_OPERATOR_DELETE(_GLIBCXX_SIZED_DEALLOC(__p, __n));
      |                                 ^
In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = double]’,
    inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = double]’ at /usr/include/c++/12/bits/alloc_traits.h:464:28,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::pointer std::_Vector_base<_Tp, _Alloc>::_M_allocate(std::size_t) [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:378:33,
    inlined from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_ForwardIterator, _ForwardIterator, std::forward_iterator_tag) [with _ForwardIterator = const double*; _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:1689:25,
    inlined from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = const double*; <template-parameter-2-2> = void; _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:708:23,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const double*, const double*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:123:24,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<double, long int, open3d::core::nns::NeighborSearchAllocator<double, long int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, const double*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, long int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:148:55: note: returned from ‘void* operator new(std::size_t)’
  148 |         return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
      |                                                       ^
cc1plus: all warnings being treated as errors
make[2]: *** [cpp/open3d/core/CMakeFiles/core.dir/build.make:1102: cpp/open3d/core/CMakeFiles/core.dir/nns/NanoFlannIndex.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '....../Open3D/build'
[ 69%] Built target visualization
make[2]: Leaving directory '....../Open3D/build'
make[1]: *** [CMakeFiles/Makefile2:1600: cpp/open3d/core/CMakeFiles/core.dir/all] Error 2
make[1]: Leaving directory '....../Open3D/build'
make: *** [Makefile:159: all] Error 2

@BboyHanat
Copy link

Yeah... The error seems to be from DGLIBCXX_USE_CXX11_ABI OFF for PyTorch, so we CANNOT turn ON DGLIBCXX_USE_CXX11_ABI while building Open3D-0.18.0.

CMake Error at 3rdparty/cmake/FindPytorch.cmake:108 (message):
   PyTorch and Open3D ABI mismatch: False != ON.

   Please use -DGLIBCXX_USE_CXX11_ABI=OFF in the cmake config command to
   change the Open3D ABI.
 Call Stack (most recent call first):
   cpp/open3d/ml/pytorch/CMakeLists.txt:7 (find_package)

 Configuring incomplete, errors occurred!

If I turned OFF DGLIBCXX_USE_CXX11_ABI while building Open3D-0.18.0, I got:

[ 69%] Building CUDA object cpp/open3d/core/CMakeFiles/core.dir/nns/KnnSearchOps.cu.o
cd ....../Open3D/build/cpp/open3d/core && /usr/local/cuda/bin/nvcc -forward-unknown-to-host-compiler -DBUILD_CUDA_MODULE -DBUILD_GUI -DBUILD_ISPC_MODULE -DENABLE_CACHED_CUDA_MANAGER -DFMT_HEADER_ONLY=0 -DFMT_STRING_ALIAS=1 -DFMT_USE_WINDOWS_H=0 -DOPEN3D_CUDA_COMPILER_ID=\"NVIDIA\" -DOPEN3D_CUDA_COMPILER_VERSION=\"12.3.107\" -DOPEN3D_CXX_COMPILER_ID=\"GNU\" -DOPEN3D_CXX_COMPILER_VERSION=\"12.3.0\" -DOPEN3D_CXX_STANDARD=\"14\" -DOPEN3D_ENABLE_DLL_EXPORTS -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DUNIX -DWITH_IPPICV -DZMQ_STATIC -D_GLIBCXX_USE_CXX11_ABI=0 -D__TBB_LIB_NAME=tbb_static --options-file CMakeFiles/core.dir/includes_CUDA.rsp -O3 -DNDEBUG -std=c++17 "--generate-code=arch=compute_86,code=[sm_86]" -Xcompiler=-fPIC --Werror cross-execution-space-call,deprecated-declarations --Werror all-warnings --Werror ext-lambda-captures-this --expt-relaxed-constexpr --diag-suppress 2809 --Werror reorder -Xcompiler -Wall,-Wextra,-Werror,-Wno-unused-parameter --expt-extended-lambda -MD -MT cpp/open3d/core/CMakeFiles/core.dir/nns/KnnSearchOps.cu.o -MF CMakeFiles/core.dir/nns/KnnSearchOps.cu.o.d -x cu -c ....../Open3D/cpp/open3d/core/nns/KnnSearchOps.cu -o CMakeFiles/core.dir/nns/KnnSearchOps.cu.o
In file included from /usr/include/x86_64-linux-gnu/c++/12/bits/c++allocator.h:33,
                 from /usr/include/c++/12/bits/allocator.h:46,
                 from /usr/include/c++/12/vector:61,
                 from ....../Open3D/cpp/open3d/core/nns/NanoFlannIndex.h:10,
                 from ....../Open3D/cpp/open3d/core/nns/NanoFlannIndex.cpp:8:
In member function ‘void std::__new_allocator<_Tp>::deallocate(_Tp*, size_type) [with _Tp = float]’,
    inlined from ‘static void std::allocator_traits<std::allocator<_Tp1> >::deallocate(allocator_type&, pointer, size_type) [with _Tp = float]’ at /usr/include/c++/12/bits/alloc_traits.h:496:23,
    inlined from ‘void std::_Vector_base<_Tp, _Alloc>::_M_deallocate(pointer, std::size_t) [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:387:19,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:366:15,
    inlined from ‘std::vector<_Tp, _Alloc>::~vector() [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:735:7,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const float*, const float*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:126:5,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, const float*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:169:33: error: ‘void operator delete(void*, std::size_t)’ called on pointer ‘<unknown>’ with nonzero offset [1, 9223372036854775804] [-Werror=free-nonheap-object]
  169 |         _GLIBCXX_OPERATOR_DELETE(_GLIBCXX_SIZED_DEALLOC(__p, __n));
      |                                 ^
In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = float]’,
    inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = float]’ at /usr/include/c++/12/bits/alloc_traits.h:464:28,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::pointer std::_Vector_base<_Tp, _Alloc>::_M_allocate(std::size_t) [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:378:33,
    inlined from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_ForwardIterator, _ForwardIterator, std::forward_iterator_tag) [with _ForwardIterator = const float*; _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:1689:25,
    inlined from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = const float*; <template-parameter-2-2> = void; _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:708:23,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const float*, const float*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:123:24,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, const float*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:148:55: note: returned from ‘void* operator new(std::size_t)’
  148 |         return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
      |                                                       ^
In member function ‘void std::__new_allocator<_Tp>::deallocate(_Tp*, size_type) [with _Tp = float]’,
    inlined from ‘static void std::allocator_traits<std::allocator<_Tp1> >::deallocate(allocator_type&, pointer, size_type) [with _Tp = float]’ at /usr/include/c++/12/bits/alloc_traits.h:496:23,
    inlined from ‘void std::_Vector_base<_Tp, _Alloc>::_M_deallocate(pointer, std::size_t) [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:387:19,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:366:15,
    inlined from ‘std::vector<_Tp, _Alloc>::~vector() [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:735:7,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const float*, const float*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:126:5,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<float, long int, open3d::core::nns::NeighborSearchAllocator<float, long int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, const float*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, long int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:169:33: error: ‘void operator delete(void*, std::size_t)’ called on pointer ‘<unknown>’ with nonzero offset [1, 9223372036854775804] [-Werror=free-nonheap-object]
  169 |         _GLIBCXX_OPERATOR_DELETE(_GLIBCXX_SIZED_DEALLOC(__p, __n));
      |                                 ^
In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = float]’,
    inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = float]’ at /usr/include/c++/12/bits/alloc_traits.h:464:28,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::pointer std::_Vector_base<_Tp, _Alloc>::_M_allocate(std::size_t) [with _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:378:33,
    inlined from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_ForwardIterator, _ForwardIterator, std::forward_iterator_tag) [with _ForwardIterator = const float*; _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:1689:25,
    inlined from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = const float*; <template-parameter-2-2> = void; _Tp = float; _Alloc = std::allocator<float>]’ at /usr/include/c++/12/bits/stl_vector.h:708:23,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<float, int, open3d::core::nns::NeighborSearchAllocator<float, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, int>&)::<lambda(const float*, const float*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:123:24,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<float, long int, open3d::core::nns::NeighborSearchAllocator<float, long int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const float*, size_t, const float*, size_t, const float*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<float, long int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:148:55: note: returned from ‘void* operator new(std::size_t)’
  148 |         return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
      |                                                       ^
In member function ‘void std::__new_allocator<_Tp>::deallocate(_Tp*, size_type) [with _Tp = double]’,
    inlined from ‘static void std::allocator_traits<std::allocator<_Tp1> >::deallocate(allocator_type&, pointer, size_type) [with _Tp = double]’ at /usr/include/c++/12/bits/alloc_traits.h:496:23,
    inlined from ‘void std::_Vector_base<_Tp, _Alloc>::_M_deallocate(pointer, std::size_t) [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:387:19,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:366:15,
    inlined from ‘std::vector<_Tp, _Alloc>::~vector() [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:735:7,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const double*, const double*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:126:5,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, const double*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:169:33: error: ‘void operator delete(void*, std::size_t)’ called on pointer ‘<unknown>’ with nonzero offset [1, 9223372036854775800] [-Werror=free-nonheap-object]
  169 |         _GLIBCXX_OPERATOR_DELETE(_GLIBCXX_SIZED_DEALLOC(__p, __n));
      |                                 ^
In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = double]’,
    inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = double]’ at /usr/include/c++/12/bits/alloc_traits.h:464:28,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::pointer std::_Vector_base<_Tp, _Alloc>::_M_allocate(std::size_t) [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:378:33,
    inlined from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_ForwardIterator, _ForwardIterator, std::forward_iterator_tag) [with _ForwardIterator = const double*; _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:1689:25,
    inlined from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = const double*; <template-parameter-2-2> = void; _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:708:23,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const double*, const double*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:123:24,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, const double*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:148:55: note: returned from ‘void* operator new(std::size_t)’
  148 |         return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
      |                                                       ^
In member function ‘void std::__new_allocator<_Tp>::deallocate(_Tp*, size_type) [with _Tp = double]’,
    inlined from ‘static void std::allocator_traits<std::allocator<_Tp1> >::deallocate(allocator_type&, pointer, size_type) [with _Tp = double]’ at /usr/include/c++/12/bits/alloc_traits.h:496:23,
    inlined from ‘void std::_Vector_base<_Tp, _Alloc>::_M_deallocate(pointer, std::size_t) [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:387:19,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:366:15,
    inlined from ‘std::vector<_Tp, _Alloc>::~vector() [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:735:7,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const double*, const double*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:126:5,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<double, long int, open3d::core::nns::NeighborSearchAllocator<double, long int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, const double*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, long int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:169:33: error: ‘void operator delete(void*, std::size_t)’ called on pointer ‘<unknown>’ with nonzero offset [1, 9223372036854775800] [-Werror=free-nonheap-object]
  169 |         _GLIBCXX_OPERATOR_DELETE(_GLIBCXX_SIZED_DEALLOC(__p, __n));
      |                                 ^
In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = double]’,
    inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = double]’ at /usr/include/c++/12/bits/alloc_traits.h:464:28,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::pointer std::_Vector_base<_Tp, _Alloc>::_M_allocate(std::size_t) [with _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:378:33,
    inlined from ‘void std::vector<_Tp, _Alloc>::_M_range_initialize(_ForwardIterator, _ForwardIterator, std::forward_iterator_tag) [with _ForwardIterator = const double*; _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:1689:25,
    inlined from ‘std::vector<_Tp, _Alloc>::vector(_InputIterator, _InputIterator, const allocator_type&) [with _InputIterator = const double*; <template-parameter-2-2> = void; _Tp = double; _Alloc = std::allocator<double>]’ at /usr/include/c++/12/bits/stl_vector.h:708:23,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_KnnSearchCPU<double, int, open3d::core::nns::NeighborSearchAllocator<double, int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, int, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, int>&)::<lambda(const double*, const double*, size_t)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:123:24,
    inlined from ‘open3d::core::nns::impl::{anonymous}::_RadiusSearchCPU<double, long int, open3d::core::nns::NeighborSearchAllocator<double, long int>, 1>(open3d::core::nns::NanoFlannIndexHolderBase*, int64_t*, size_t, const double*, size_t, const double*, size_t, const double*, bool, bool, bool, bool, open3d::core::nns::NeighborSearchAllocator<double, long int>&)::<lambda(const tbb::blocked_range<long unsigned int>&)>’ at ....../Open3D/cpp/open3d/core/nns/NanoFlannImpl.h:258:41:
/usr/include/c++/12/bits/new_allocator.h:148:55: note: returned from ‘void* operator new(std::size_t)’
  148 |         return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
      |                                                       ^
cc1plus: all warnings being treated as errors
make[2]: *** [cpp/open3d/core/CMakeFiles/core.dir/build.make:1102: cpp/open3d/core/CMakeFiles/core.dir/nns/NanoFlannIndex.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '....../Open3D/build'
[ 69%] Built target visualization
make[2]: Leaving directory '....../Open3D/build'
make[1]: *** [CMakeFiles/Makefile2:1600: cpp/open3d/core/CMakeFiles/core.dir/all] Error 2
make[1]: Leaving directory '....../Open3D/build'
make: *** [Makefile:159: all] Error 2

I got same error, do you solve it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build/install Build or installation issue
Projects
None yet
Development

No branches or pull requests

5 participants