Closed jiapei100 closed 1 year ago
Please help to take a look at https://github.com/isl-org/Open3D/issues/5411.
It looks Open3D has some compatibility issue. However, the problem seems to be from qhull.
...... [ 29%] Building CXX object cpp/open3d/visualization/CMakeFiles/visualization.dir/rendering/filament/FilamentView.cpp.o cd ....../Open3D/build/cpp/open3d/visualization && /usr/bin/ccache /usr/bin/c++ -DBUILD_AZURE_KINECT -DBUILD_CUDA_MODULE -DBUILD_GUI -DBUILD_LIBREALSENSE -DENABLE_CACHED_CUDA_MANAGER -DFMT_FUZZ -DIMGUI_DISABLE_INCLUDE_IMCONFIG_H -DMKL_ILP64 -DOPEN3D_CUDA_COMPILER_ID=\"NVIDIA\" -DOPEN3D_CUDA_COMPILER_VERSION=\"11.7.64\" -DOPEN3D_CXX_COMPILER_ID=\"GNU\" -DOPEN3D_CXX_COMPILER_VERSION=\"11.2.0\" -DOPEN3D_CXX_STANDARD=\"20\" -DOPEN3D_ENABLE_DLL_EXPORTS -DOPEN3D_USE_ONEAPI_PACKAGES -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DUNIX -DZMQ_STATIC -D_FORTIFY_SOURCE=2 -D_GLIBCXX_USE_CXX11_ABI=0 -D__TBB_LIB_NAME=tbb_static -I....../Open3D/cpp -isystem /usr/local/cuda/include -isystem /usr/include/jsoncpp -isystem /usr/include/liblzf -isystem /usr/local/include/tinyfiledialogs -isystem /usr/include/mit-krb5 -isystem /usr/include/pgm-5.3 -isystem /usr/include/libxml2 -isystem /opt/intel/oneapi/tbb/2021.6.0/include -isystem /opt/intel/oneapi/mkl/2022.1.0/include -isystem /opt/intel/oneapi/embree/3.13.3/include -isystem /usr/include/eigen3 -isystem /usr/local/filament/include -std=c++20 -Wno-unused-variable -Werror=unused-function -Werror=deprecated-declarations -DUTILS_DEPRECATED -I/usr/local/include -I/opt/intel/oneapi/embree/latest -I/opt/intel/oneapi/dpl/latest/linux -I/usr/local/vtk/headers/vtk-9.2 -O3 -DNDEBUG -fPIC -Wall -Wextra -Werror -Wno-unused-parameter -Werror=unused-function -Werror=deprecated-declarations -fdiagnostics-color=always -fstack-protector-strong -Wformat -Wformat-security -fopenmp -m64 -std=gnu++20 -MD -MT cpp/open3d/visualization/CMakeFiles/visualization.dir/rendering/filament/FilamentView.cpp.o -MF CMakeFiles/visualization.dir/rendering/filament/FilamentView.cpp.o.d -o CMakeFiles/visualization.dir/rendering/filament/FilamentView.cpp.o -c ....../Open3D/cpp/open3d/visualization/rendering/filament/FilamentView.cpp In file included from /usr/include/libqhullcpp/QhullVertex.h:14, from /usr/include/libqhullcpp/Qhull.h:13, from ....../Open3D/cpp/open3d/geometry/Qhull.cpp:30: /usr/include/libqhullcpp/QhullLinkedList.h:65:45: error: expected ‘)’ before ‘b’ 65 | QhullLinkedList<T>(T b, T e) : begin_node(b), end_node(e) {} | ~ ^~ | ) /usr/include/libqhullcpp/QhullLinkedList.h:67:44: error: expected unqualified-id before ‘const’ 67 | QhullLinkedList<T>(const QhullLinkedList<T> &other) : begin_node(other.begin_node), end_node(other.end_node) {} | ^~~~~ /usr/include/libqhullcpp/QhullLinkedList.h:67:44: error: expected ‘)’ before ‘const’ 67 | QhullLinkedList<T>(const QhullLinkedList<T> &other) : begin_node(other.begin_node), end_node(other.end_node) {} | ~^~~~~ | ) /usr/include/libqhullcpp/QhullLinkedList.h:70:25: error: template-id not allowed for destructor 70 | ~QhullLinkedList<T>() {} | ^ /usr/include/libqhullcpp/QhullLinkedList.h:74:44: error: expected unqualified-id before ‘)’ token 74 | QhullLinkedList<T>() {} | ^ In file included from /usr/include/libqhullcpp/QhullVertex.h:15, from /usr/include/libqhullcpp/Qhull.h:13, from ....../Open3D/cpp/open3d/geometry/Qhull.cpp:30: /usr/include/libqhullcpp/QhullSet.h:113:37: error: expected unqualified-id before ‘const’ 113 | QhullSet<T>(const Qhull &q, setT *s) : QhullSetBase(q, s) { } | ^~~~~ /usr/include/libqhullcpp/QhullSet.h:113:37: error: expected ‘)’ before ‘const’ 113 | QhullSet<T>(const Qhull &q, setT *s) : QhullSetBase(q, s) { } | ~^~~~~ | ) /usr/include/libqhullcpp/QhullSet.h:114:44: error: expected ‘)’ before ‘*’ token 114 | QhullSet<T>(QhullQh *qqh, setT *s) : QhullSetBase(qqh, s) { } | ~ ^~ | ) /usr/include/libqhullcpp/QhullSet.h:117:37: error: expected unqualified-id before ‘const’ 117 | QhullSet<T>(const QhullSet<T> &other) : QhullSetBase(other) {} | ^~~~~ /usr/include/libqhullcpp/QhullSet.h:117:37: error: expected ‘)’ before ‘const’ 117 | QhullSet<T>(const QhullSet<T> &other) : QhullSetBase(other) {} | ~^~~~~ | ) /usr/include/libqhullcpp/QhullSet.h:119:25: error: template-id not allowed for destructor 119 | ~QhullSet<T>() {} | ^ /usr/include/libqhullcpp/QhullSet.h:123:37: error: expected unqualified-id before ‘)’ token 123 | QhullSet<T>(); | ^ /usr/include/libqhullcpp/QhullSet.h:297:45: error: expected unqualified-id before ‘const’ 297 | QhullSetIterator<T>(const QhullSet<T> &s) : i(s.data()), begin_i(i), end_i(s.endData()), qh_qh(s.qh()) {} | ^~~~~ /usr/include/libqhullcpp/QhullSet.h:297:45: error: expected ‘)’ before ‘const’ 297 | QhullSetIterator<T>(const QhullSet<T> &s) : i(s.data()), begin_i(i), end_i(s.endData()), qh_qh(s.qh()) {} | ~^~~~~ | ) /usr/include/libqhullcpp/QhullSet.h:298:45: error: expected unqualified-id before ‘const’ 298 | QhullSetIterator<T>(const QhullSetIterator<T> &o) : i(o.i), begin_i(o.begin_i), end_i(o.end_i), qh_qh(o.qh_qh) {} | ^~~~~ /usr/include/libqhullcpp/QhullSet.h:298:45: error: expected ‘)’ before ‘const’ 298 | QhullSetIterator<T>(const QhullSetIterator<T> &o) : i(o.i), begin_i(o.begin_i), end_i(o.end_i), qh_qh(o.qh_qh) {} | ~^~~~~ | ) In file included from /usr/include/libqhullcpp/QhullFacet.h:16, from /usr/include/libqhullcpp/Qhull.h:14, from ....../Open3D/cpp/open3d/geometry/Qhull.cpp:30: /usr/include/libqhullcpp/QhullPointSet.h: In constructor ‘orgQhull::QhullPointSet::QhullPointSet(const orgQhull::Qhull&, setT*)’: /usr/include/libqhullcpp/QhullPointSet.h:41:87: error: could not convert ‘q’ from ‘const orgQhull::Qhull’ to ‘orgQhull::QhullSetBase’ 41 | QhullPointSet(const Qhull &q, setT *s) : QhullSet<QhullPoint>(q, s) {} | ^ | | | const orgQhull::Qhull /usr/include/libqhullcpp/QhullPointSet.h: In constructor ‘orgQhull::QhullPointSet::QhullPointSet(orgQhull::QhullQh*, setT*)’: /usr/include/libqhullcpp/QhullPointSet.h:43:85: error: could not convert ‘qqh’ from ‘orgQhull::QhullQh*’ to ‘orgQhull::QhullSetBase’ 43 | QhullPointSet(QhullQh *qqh, setT *s) : QhullSet<QhullPoint>(qqh, s) {} | ^~~ | | | orgQhull::QhullQh* In file included from ....../Open3D/cpp/open3d/geometry/Qhull.cpp:32: /usr/include/libqhullcpp/QhullFacetList.h: In constructor ‘orgQhull::QhullFacetList::QhullFacetList(orgQhull::QhullFacet, orgQhull::QhullFacet)’: /usr/include/libqhullcpp/QhullFacetList.h:45:121: error: no matching function for call to ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList(orgQhull::QhullFacet&, orgQhull::QhullFacet&)’ 45 | QhullFacetList(QhullFacet b, QhullFacet e) : QhullLinkedList<QhullFacet>(b, e), select_all(false) {} | ^ In file included from /usr/include/libqhullcpp/QhullVertex.h:14, from /usr/include/libqhullcpp/Qhull.h:13, from ....../Open3D/cpp/open3d/geometry/Qhull.cpp:30: /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate: ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList()’ 42 | class QhullLinkedList | ^~~~~~~~~~~~~~~ /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate expects 0 arguments, 2 provided /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate: ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList(const orgQhull::QhullLinkedList<orgQhull::QhullFacet>&)’ /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate expects 1 argument, 2 provided In file included from ....../Open3D/cpp/open3d/geometry/Qhull.cpp:32: /usr/include/libqhullcpp/QhullFacetList.h: In copy constructor ‘orgQhull::QhullFacetList::QhullFacetList(const orgQhull::QhullFacetList&)’: /usr/include/libqhullcpp/QhullFacetList.h:47:157: error: no matching function for call to ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList(const orgQhull::QhullFacet&, const orgQhull::QhullFacet&)’ 47 | QhullFacetList(const QhullFacetList &other) : QhullLinkedList<QhullFacet>(*other.begin(), *other.end()), select_all(other.select_all) {} | ^ In file included from /usr/include/libqhullcpp/QhullVertex.h:14, from /usr/include/libqhullcpp/Qhull.h:13, from ....../Open3D/cpp/open3d/geometry/Qhull.cpp:30: /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate: ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList()’ 42 | class QhullLinkedList | ^~~~~~~~~~~~~~~ /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate expects 0 arguments, 2 provided /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate: ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList(const orgQhull::QhullLinkedList<orgQhull::QhullFacet>&)’ /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate expects 1 argument, 2 provided In file included from ....../Open3D/cpp/open3d/geometry/Qhull.cpp:33: /usr/include/libqhullcpp/QhullVertexSet.h: In constructor ‘orgQhull::QhullVertexSet::QhullVertexSet(const orgQhull::Qhull&, setT*)’: /usr/include/libqhullcpp/QhullVertexSet.h:39:89: error: could not convert ‘q’ from ‘const orgQhull::Qhull’ to ‘orgQhull::QhullSetBase’ 39 | QhullVertexSet(const Qhull &q, setT *s) : QhullSet<QhullVertex>(q, s), qhsettemp_defined(false) {} | ^ | | | const orgQhull::Qhull /usr/include/libqhullcpp/QhullVertexSet.h: In constructor ‘orgQhull::QhullVertexSet::QhullVertexSet(orgQhull::QhullQh*, setT*)’: /usr/include/libqhullcpp/QhullVertexSet.h:42:87: error: could not convert ‘qqh’ from ‘orgQhull::QhullQh*’ to ‘orgQhull::QhullSetBase’ 42 | QhullVertexSet(QhullQh *qqh, setT *s) : QhullSet<QhullVertex>(qqh, s), qhsettemp_defined(false) {} | ^~~ | | | orgQhull::QhullQh* make[2]: *** [cpp/open3d/geometry/CMakeFiles/geometry.dir/build.make:331: cpp/open3d/geometry/CMakeFiles/geometry.dir/Qhull.cpp.o] Error 1 make[2]: Leaving directory '....../Open3D/build' make[1]: *** [CMakeFiles/Makefile2:1511: cpp/open3d/geometry/CMakeFiles/geometry.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... In file included from ....../Open3D/cpp/open3d/utility/Logging.h:40, from ....../Open3D/cpp/open3d/visualization/visualizer/ViewControlWithCustomAnimation.cpp:31: /usr/local/include/fmt/core.h: In member function ‘std::string open3d::visualization::ViewControlWithCustomAnimation::GetStatusString() const’: ....../Open3D/cpp/open3d/visualization/visualizer/ViewControlWithCustomAnimation.cpp:183:33: in ‘constexpr’ expansion of ‘fmt::v9::basic_format_string<char, const char (&)[26], unsigned int, unsigned int, const char*>(buffer)’ /usr/local/include/fmt/core.h:3126:62: error: ‘constexpr fmt::v9::basic_string_view<Char>::basic_string_view(const std::basic_string<Char, Traits, Alloc>&) [with Traits = std::char_traits<char>; Alloc = std::allocator<char>; Char = char]’ called in a constant expression 3126 | FMT_CONSTEVAL FMT_INLINE basic_format_string(const S& s) : str_(s) { | ^~~~~~~ /usr/local/include/fmt/core.h:461:17: note: ‘constexpr fmt::v9::basic_string_view<Char>::basic_string_view(const std::basic_string<Char, Traits, Alloc>&) [with Traits = std::char_traits<char>; Alloc = std::allocator<char>; Char = char]’ is not usable as a ‘constexpr’ function because: 461 | FMT_CONSTEXPR basic_string_view( | ^~~~~~~~~~~~~~~~~ /usr/local/include/fmt/core.h:463:21: error: call to non-‘constexpr’ function ‘const _CharT* std::basic_string<_CharT, _Traits, _Alloc>::data() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ 463 | : data_(s.data()), size_(s.size()) {} | ~~~~~~^~ In file included from /usr/include/c++/11/string:55, from /usr/include/c++/11/bits/locale_classes.h:40, from /usr/include/c++/11/bits/ios_base.h:41, from /usr/include/c++/11/ios:42, from /usr/include/c++/11/ostream:38, from /usr/include/c++/11/bits/unique_ptr.h:42, from /usr/include/c++/11/memory:76, from ....../Open3D/cpp/open3d/camera/PinholeCameraTrajectory.h:29, from ....../Open3D/cpp/open3d/visualization/visualizer/ViewControlWithCustomAnimation.h:29, from ....../Open3D/cpp/open3d/visualization/visualizer/ViewControlWithCustomAnimation.cpp:27: /usr/include/c++/11/bits/basic_string.h:5268:7: note: ‘const _CharT* std::basic_string<_CharT, _Traits, _Alloc>::data() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ declared here 5268 | data() const _GLIBCXX_NOEXCEPT | ^~~~ make[2]: *** [cpp/open3d/visualization/CMakeFiles/visualization.dir/build.make:387: cpp/open3d/visualization/CMakeFiles/visualization.dir/visualizer/ViewControlWithCustomAnimation.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... ....../Open3D/cpp/open3d/core/nns/KnnSearchOps.cu(177): error: class "open3d::core::CUDAScopedStream" has no member "CreateNewStream" detected during instantiation of "void open3d::core::nns::KnnSearchCUDA<T,TIndex>(const open3d::core::Tensor &, const open3d::core::Tensor &, const open3d::core::Tensor &, const open3d::core::Tensor &, int, open3d::core::Tensor &, open3d::core::Tensor &, open3d::core::Tensor &) [with T=float, TIndex=int32_t]" (334): here 1 error detected in the compilation of "....../Open3D/cpp/open3d/core/nns/KnnSearchOps.cu". make[2]: *** [cpp/open3d/core/CMakeFiles/core.dir/build.make:1241: cpp/open3d/core/CMakeFiles/core.dir/nns/KnnSearchOps.cu.o] Error 1 make[2]: *** Waiting for unfinished jobs.... ....../Open3D/cpp/open3d/visualization/visualizer/VisualizerWithCustomAnimation.cpp: In lambda function: ....../Open3D/cpp/open3d/visualization/visualizer/VisualizerWithCustomAnimation.cpp:131:76: error: call to non-‘constexpr’ function ‘const _CharT* std::basic_string<_CharT, _Traits, _Alloc>::c_str() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ 131 | buffer = fmt::format(recording_depth_filename_format_.c_str(), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ In file included from /usr/include/c++/11/string:55, from /usr/include/c++/11/bits/locale_classes.h:40, from /usr/include/c++/11/bits/ios_base.h:41, from /usr/include/c++/11/ios:42, from /usr/include/c++/11/istream:38, from /usr/include/c++/11/sstream:38, from /usr/include/c++/11/complex:45, from /usr/include/eigen3/Eigen/Core:50, from ....../Open3D/cpp/open3d/visualization/visualizer/Visualizer.h:38, from ....../Open3D/cpp/open3d/visualization/visualizer/VisualizerWithCustomAnimation.h:29, from ....../Open3D/cpp/open3d/visualization/visualizer/VisualizerWithCustomAnimation.cpp:27: /usr/include/c++/11/bits/basic_string.h:5256:7: note: ‘const _CharT* std::basic_string<_CharT, _Traits, _Alloc>::c_str() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ declared here 5256 | c_str() const _GLIBCXX_NOEXCEPT | ^~~~~ ....../Open3D/cpp/open3d/visualization/visualizer/VisualizerWithCustomAnimation.cpp:136:76: error: call to non-‘constexpr’ function ‘const _CharT* std::basic_string<_CharT, _Traits, _Alloc>::c_str() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ 136 | buffer = fmt::format(recording_image_filename_format_.c_str(), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ In file included from /usr/include/c++/11/string:55, from /usr/include/c++/11/bits/locale_classes.h:40, from /usr/include/c++/11/bits/ios_base.h:41, from /usr/include/c++/11/ios:42, from /usr/include/c++/11/istream:38, from /usr/include/c++/11/sstream:38, from /usr/include/c++/11/complex:45, from /usr/include/eigen3/Eigen/Core:50, from ....../Open3D/cpp/open3d/visualization/visualizer/Visualizer.h:38, from ....../Open3D/cpp/open3d/visualization/visualizer/VisualizerWithCustomAnimation.h:29, from ....../Open3D/cpp/open3d/visualization/visualizer/VisualizerWithCustomAnimation.cpp:27: /usr/include/c++/11/bits/basic_string.h:5256:7: note: ‘const _CharT* std::basic_string<_CharT, _Traits, _Alloc>::c_str() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ declared here 5256 | c_str() const _GLIBCXX_NOEXCEPT | ^~~~~ make[2]: *** [cpp/open3d/visualization/CMakeFiles/visualization.dir/build.make:485: cpp/open3d/visualization/CMakeFiles/visualization.dir/visualizer/VisualizerWithCustomAnimation.cpp.o] Error 1 In file included from /usr/include/libqhullcpp/QhullVertex.h:14, from /usr/include/libqhullcpp/Qhull.h:13, from ....../Open3D/cpp/open3d/t/geometry/PointCloud.cpp:30: /usr/include/libqhullcpp/QhullLinkedList.h:65:45: error: expected ‘)’ before ‘b’ 65 | QhullLinkedList<T>(T b, T e) : begin_node(b), end_node(e) {} | ~ ^~ | ) /usr/include/libqhullcpp/QhullLinkedList.h:67:44: error: expected unqualified-id before ‘const’ 67 | QhullLinkedList<T>(const QhullLinkedList<T> &other) : begin_node(other.begin_node), end_node(other.end_node) {} | ^~~~~ /usr/include/libqhullcpp/QhullLinkedList.h:67:44: error: expected ‘)’ before ‘const’ 67 | QhullLinkedList<T>(const QhullLinkedList<T> &other) : begin_node(other.begin_node), end_node(other.end_node) {} | ~^~~~~ | ) /usr/include/libqhullcpp/QhullLinkedList.h:70:25: error: template-id not allowed for destructor 70 | ~QhullLinkedList<T>() {} | ^ /usr/include/libqhullcpp/QhullLinkedList.h:74:44: error: expected unqualified-id before ‘)’ token 74 | QhullLinkedList<T>() {} | ^ In file included from /usr/include/libqhullcpp/QhullVertex.h:15, from /usr/include/libqhullcpp/Qhull.h:13, from ....../Open3D/cpp/open3d/t/geometry/PointCloud.cpp:30: /usr/include/libqhullcpp/QhullSet.h:113:37: error: expected unqualified-id before ‘const’ 113 | QhullSet<T>(const Qhull &q, setT *s) : QhullSetBase(q, s) { } | ^~~~~ /usr/include/libqhullcpp/QhullSet.h:113:37: error: expected ‘)’ before ‘const’ 113 | QhullSet<T>(const Qhull &q, setT *s) : QhullSetBase(q, s) { } | ~^~~~~ | ) /usr/include/libqhullcpp/QhullSet.h:114:44: error: expected ‘)’ before ‘*’ token 114 | QhullSet<T>(QhullQh *qqh, setT *s) : QhullSetBase(qqh, s) { } | ~ ^~ | ) /usr/include/libqhullcpp/QhullSet.h:117:37: error: expected unqualified-id before ‘const’ 117 | QhullSet<T>(const QhullSet<T> &other) : QhullSetBase(other) {} | ^~~~~ /usr/include/libqhullcpp/QhullSet.h:117:37: error: expected ‘)’ before ‘const’ 117 | QhullSet<T>(const QhullSet<T> &other) : QhullSetBase(other) {} | ~^~~~~ | ) /usr/include/libqhullcpp/QhullSet.h:119:25: error: template-id not allowed for destructor 119 | ~QhullSet<T>() {} | ^ /usr/include/libqhullcpp/QhullSet.h:123:37: error: expected unqualified-id before ‘)’ token 123 | QhullSet<T>(); | ^ /usr/include/libqhullcpp/QhullSet.h:297:45: error: expected unqualified-id before ‘const’ 297 | QhullSetIterator<T>(const QhullSet<T> &s) : i(s.data()), begin_i(i), end_i(s.endData()), qh_qh(s.qh()) {} | ^~~~~ /usr/include/libqhullcpp/QhullSet.h:297:45: error: expected ‘)’ before ‘const’ 297 | QhullSetIterator<T>(const QhullSet<T> &s) : i(s.data()), begin_i(i), end_i(s.endData()), qh_qh(s.qh()) {} | ~^~~~~ | ) /usr/include/libqhullcpp/QhullSet.h:298:45: error: expected unqualified-id before ‘const’ 298 | QhullSetIterator<T>(const QhullSetIterator<T> &o) : i(o.i), begin_i(o.begin_i), end_i(o.end_i), qh_qh(o.qh_qh) {} | ^~~~~ /usr/include/libqhullcpp/QhullSet.h:298:45: error: expected ‘)’ before ‘const’ 298 | QhullSetIterator<T>(const QhullSetIterator<T> &o) : i(o.i), begin_i(o.begin_i), end_i(o.end_i), qh_qh(o.qh_qh) {} | ~^~~~~ | ) In file included from /usr/include/libqhullcpp/QhullFacet.h:16, from /usr/include/libqhullcpp/Qhull.h:14, from ....../Open3D/cpp/open3d/t/geometry/PointCloud.cpp:30: /usr/include/libqhullcpp/QhullPointSet.h: In constructor ‘orgQhull::QhullPointSet::QhullPointSet(const orgQhull::Qhull&, setT*)’: /usr/include/libqhullcpp/QhullPointSet.h:41:87: error: could not convert ‘q’ from ‘const orgQhull::Qhull’ to ‘orgQhull::QhullSetBase’ 41 | QhullPointSet(const Qhull &q, setT *s) : QhullSet<QhullPoint>(q, s) {} | ^ | | | const orgQhull::Qhull /usr/include/libqhullcpp/QhullPointSet.h: In constructor ‘orgQhull::QhullPointSet::QhullPointSet(orgQhull::QhullQh*, setT*)’: /usr/include/libqhullcpp/QhullPointSet.h:43:85: error: could not convert ‘qqh’ from ‘orgQhull::QhullQh*’ to ‘orgQhull::QhullSetBase’ 43 | QhullPointSet(QhullQh *qqh, setT *s) : QhullSet<QhullPoint>(qqh, s) {} | ^~~ | | | orgQhull::QhullQh* In file included from ....../Open3D/cpp/open3d/t/geometry/PointCloud.cpp:32: /usr/include/libqhullcpp/QhullFacetList.h: In constructor ‘orgQhull::QhullFacetList::QhullFacetList(orgQhull::QhullFacet, orgQhull::QhullFacet)’: /usr/include/libqhullcpp/QhullFacetList.h:45:121: error: no matching function for call to ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList(orgQhull::QhullFacet&, orgQhull::QhullFacet&)’ 45 | QhullFacetList(QhullFacet b, QhullFacet e) : QhullLinkedList<QhullFacet>(b, e), select_all(false) {} | ^ In file included from /usr/include/libqhullcpp/QhullVertex.h:14, from /usr/include/libqhullcpp/Qhull.h:13, from ....../Open3D/cpp/open3d/t/geometry/PointCloud.cpp:30: /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate: ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList()’ 42 | class QhullLinkedList | ^~~~~~~~~~~~~~~ /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate expects 0 arguments, 2 provided /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate: ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList(const orgQhull::QhullLinkedList<orgQhull::QhullFacet>&)’ /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate expects 1 argument, 2 provided In file included from ....../Open3D/cpp/open3d/t/geometry/PointCloud.cpp:32: /usr/include/libqhullcpp/QhullFacetList.h: In copy constructor ‘orgQhull::QhullFacetList::QhullFacetList(const orgQhull::QhullFacetList&)’: /usr/include/libqhullcpp/QhullFacetList.h:47:157: error: no matching function for call to ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList(const orgQhull::QhullFacet&, const orgQhull::QhullFacet&)’ 47 | QhullFacetList(const QhullFacetList &other) : QhullLinkedList<QhullFacet>(*other.begin(), *other.end()), select_all(other.select_all) {} | ^ In file included from /usr/include/libqhullcpp/QhullVertex.h:14, from /usr/include/libqhullcpp/Qhull.h:13, from ....../Open3D/cpp/open3d/t/geometry/PointCloud.cpp:30: /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate: ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList()’ 42 | class QhullLinkedList | ^~~~~~~~~~~~~~~ /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate expects 0 arguments, 2 provided /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate: ‘orgQhull::QhullLinkedList<orgQhull::QhullFacet>::QhullLinkedList(const orgQhull::QhullLinkedList<orgQhull::QhullFacet>&)’ /usr/include/libqhullcpp/QhullLinkedList.h:42:7: note: candidate expects 1 argument, 2 provided In file included from ....../Open3D/cpp/open3d/t/geometry/PointCloud.cpp:33: /usr/include/libqhullcpp/QhullVertexSet.h: In constructor ‘orgQhull::QhullVertexSet::QhullVertexSet(const orgQhull::Qhull&, setT*)’: /usr/include/libqhullcpp/QhullVertexSet.h:39:89: error: could not convert ‘q’ from ‘const orgQhull::Qhull’ to ‘orgQhull::QhullSetBase’ 39 | QhullVertexSet(const Qhull &q, setT *s) : QhullSet<QhullVertex>(q, s), qhsettemp_defined(false) {} | ^ | | | const orgQhull::Qhull /usr/include/libqhullcpp/QhullVertexSet.h: In constructor ‘orgQhull::QhullVertexSet::QhullVertexSet(orgQhull::QhullQh*, setT*)’: /usr/include/libqhullcpp/QhullVertexSet.h:42:87: error: could not convert ‘qqh’ from ‘orgQhull::QhullQh*’ to ‘orgQhull::QhullSetBase’ 42 | QhullVertexSet(QhullQh *qqh, setT *s) : QhullSet<QhullVertex>(qqh, s), qhsettemp_defined(false) {} | ^~~ | | | orgQhull::QhullQh* make[2]: *** [cpp/open3d/t/geometry/CMakeFiles/tgeometry.dir/build.make:121: cpp/open3d/t/geometry/CMakeFiles/tgeometry.dir/PointCloud.cpp.o] Error 1 make[2]: Leaving directory '....../Open3D/build' make[1]: *** [CMakeFiles/Makefile2:1615: cpp/open3d/t/geometry/CMakeFiles/tgeometry.dir/all] Error 2 ....../Open3D/cpp/open3d/visualization/rendering/filament/FilamentView.cpp: In member function ‘virtual int open3d::visualization::rendering::FilamentView::GetSampleCount() const’: ....../Open3D/cpp/open3d/visualization/rendering/filament/FilamentView.cpp:164:1: error: no return statement in function returning non-void [-Werror=return-type] 164 | } | ^ cc1plus: all warnings being treated as errors make[2]: *** [cpp/open3d/visualization/CMakeFiles/visualization.dir/build.make:863: cpp/open3d/visualization/CMakeFiles/visualization.dir/rendering/filament/FilamentView.cpp.o] Error 1 make[2]: Leaving directory '....../Open3D/build' make[1]: *** [CMakeFiles/Makefile2:1771: cpp/open3d/visualization/CMakeFiles/visualization.dir/all] Error 2 ^Cmake[2]: *** Deleting file 'cpp/open3d/core/CMakeFiles/core.dir/nns/kernel/BlockSelectFloat32.cu.o' make[2]: *** [cpp/open3d/core/CMakeFiles/core.dir/build.make:1227: cpp/open3d/core/CMakeFiles/core.dir/nns/kernel/BlockSelectFloat64.cu.o] Interrupt make[2]: *** [cpp/open3d/core/CMakeFiles/core.dir/build.make:1213: cpp/open3d/core/CMakeFiles/core.dir/nns/kernel/BlockSelectFloat32.cu.o] Interrupt make[1]: *** [CMakeFiles/Makefile2:1459: cpp/open3d/core/CMakeFiles/core.dir/all] Interrupt make[2]: *** [cpp/open3d/t/geometry/kernel/CMakeFiles/tgeometry_kernel.dir/build.make:191: cpp/open3d/t/geometry/kernel/CMakeFiles/tgeometry_kernel.dir/ImageCUDA.cu.o] Interrupt make[1]: *** [CMakeFiles/Makefile2:1641: cpp/open3d/t/geometry/kernel/CMakeFiles/tgeometry_kernel.dir/all] Interrupt make: *** [Makefile:159: all] Interrupt ......
Take a look at this https://en.cppreference.com/w/cpp/language/class_template_argument_deduction . It looks 2 files have to be thoroughly modified:
Please help to take a look at https://github.com/isl-org/Open3D/issues/5411.
It looks Open3D has some compatibility issue. However, the problem seems to be from qhull.