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

Unable to compile #156

Open
fb82 opened this issue Dec 22, 2024 · 1 comment
Open

Unable to compile #156

fb82 opened this issue Dec 22, 2024 · 1 comment

Comments

@fb82
Copy link

fb82 commented Dec 22, 2024

Hi,

I'm unable to compile on a fresh Ubuntu 24.04 installation, got the following errors (PoseLib and COLMAP 3.11.1 compiled with no problem from GitHub, it this info are needed):
~/git/glomap$ mkdir build cd build cmake .. -GNinja -- The C compiler identification is GNU 13.3.0 -- The CXX compiler identification is GNU 13.3.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Found CHOLMOD headers in: /usr/include/suitesparse -- Found CHOLMOD library: /usr/lib/x86_64-linux-gnu/libcholmod.so -- Found Config headers in: /usr/include/suitesparse -- Found Config library: /usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so -- Found AMD headers in: /usr/include/suitesparse -- Found AMD library: /usr/lib/x86_64-linux-gnu/libamd.so -- Found CAMD headers in: /usr/include/suitesparse -- Found CAMD library: /usr/lib/x86_64-linux-gnu/libcamd.so -- Found CCOLAMD headers in: /usr/include/suitesparse -- Found CCOLAMD library: /usr/lib/x86_64-linux-gnu/libccolamd.so -- Found COLAMD headers in: /usr/include/suitesparse -- Found COLAMD library: /usr/lib/x86_64-linux-gnu/libcolamd.so -- Looking for shm_open in rt -- Looking for shm_open in rt - found -- Adding librt to SuiteSparse_config libraries (required on Linux & Unix [not OSX] if SuiteSparse is compiled with timing). -- Found METIS: /usr/include (found version "5.1.0") -- Looking for cholmod_metis -- Looking for cholmod_metis - found -- Found SuiteSparse: /usr/include/suitesparse (found version "7.6.1") found components: CHOLMOD Config AMD CAMD CCOLAMD COLAMD -- Found AMD headers in: /usr/include/suitesparse -- Found AMD library: /usr/lib/x86_64-linux-gnu/libamd.so -- Found CAMD headers in: /usr/include/suitesparse -- Found CAMD library: /usr/lib/x86_64-linux-gnu/libcamd.so -- Found CCOLAMD headers in: /usr/include/suitesparse -- Found CCOLAMD library: /usr/lib/x86_64-linux-gnu/libccolamd.so -- Found CHOLMOD headers in: /usr/include/suitesparse -- Found CHOLMOD library: /usr/lib/x86_64-linux-gnu/libcholmod.so -- Found COLAMD headers in: /usr/include/suitesparse -- Found COLAMD library: /usr/lib/x86_64-linux-gnu/libcolamd.so -- Found SPQR headers in: /usr/include/suitesparse -- Found SPQR library: /usr/lib/x86_64-linux-gnu/libspqr.so -- Found Config headers in: /usr/include/suitesparse -- Found Config library: /usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so -- Found Intel Thread Building Blocks (TBB) library (2021.11 / ) include location: . Assuming SuiteSparseQR was compiled with TBB. -- Adding librt to SuiteSparse_config libraries (required on Linux & Unix [not OSX] if SuiteSparse is compiled with timing). -- Found SuiteSparse: /usr/include/suitesparse (found suitable version "7.6.1", minimum required is "7.6.1") found components: AMD CAMD CCOLAMD CHOLMOD COLAMD SPQR Config -- Found required Ceres dependency: Eigen version 3.4.0 in /usr/share/eigen3/cmake -- Found required Ceres dependency: glog -- Found required Ceres dependency: gflags -- Found Ceres version: 2.2.0 installed in: /usr with components: [EigenSparse, SparseLinearAlgebraLibrary, LAPACK, SuiteSparse, SchurSpecializations] -- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.83.0/BoostConfig.cmake (found version "1.83.0") -- Configuring PoseLib... -- BUILD_SHARED_LIBS: OFF -- CMAKE_BUILD_TYPE: Release -- CMAKE_GENERATOR: Single-config -- CMAKE_GENERATOR: Ninja -- CMAKE_REGISTRY_FOLDER: OFF -- Configuring PoseLib... done -- Configuring COLMAP... -- Enabling LSD support -- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.83.0/BoostConfig.cmake (found version "1.83.0") found components: graph program_options system -- Found FreeImage -- Includes : /usr/include -- Libraries : /usr/lib/x86_64-linux-gnu/libfreeimage.so -- Found FLANN -- Includes : /usr/include -- Libraries : /usr/lib/x86_64-linux-gnu/libflann.so -- Found LZ4 -- Includes : /usr/include -- Libraries : /usr/lib/x86_64-linux-gnu/liblz4.so -- Found Metis -- Includes : /usr/include -- Libraries : /usr/lib/x86_64-linux-gnu/libmetis.so -- Found Glog -- Target : glog::glog -- Found SQLite3: /usr/include (found version "3.45.1") -- Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so -- Found Glew -- Includes : /usr/include -- Libraries : /usr/lib/x86_64-linux-gnu/libGLEW.so -- Found Git: /usr/bin/git (found version "2.43.0") -- Found required Ceres dependency: Eigen version 3.4.0 in /usr/share/eigen3/cmake -- Found required Ceres dependency: glog -- Found required Ceres dependency: gflags -- Found Ceres version: 2.2.0 installed in: /usr with components: [EigenSparse, SparseLinearAlgebraLibrary, LAPACK, SuiteSparse, SchurSpecializations] -- Enabling OpenMP support -- Using header-only CGAL -- Targeting Ninja -- Using /usr/bin/c++ compiler. -- Found GMP: /usr/lib/x86_64-linux-gnu/libgmp.so -- Found MPFR: /usr/lib/x86_64-linux-gnu/libmpfr.so -- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.83.0/BoostConfig.cmake (found suitable version "1.83.0", minimum required is "1.66") -- Boost include dirs: /usr/include -- Boost libraries: -- Using gcc version 4 or later. Adding -frounding-math -- Found CGAL -- Includes : /usr/include -- Libraries : CGAL -- The CUDA compiler identification is NVIDIA 12.0.140 -- Detecting CUDA compiler ABI info -- Detecting CUDA compiler ABI info - done -- Check for working CUDA compiler: /usr/bin/nvcc - skipped -- Detecting CUDA compile features -- Detecting CUDA compile features - done -- Enabling CUDA support (version: 12.0.140, archs: native) -- Found Qt -- Module : /usr/lib/x86_64-linux-gnu/cmake/Qt5Core -- Module : /usr/lib/x86_64-linux-gnu/cmake/Qt5OpenGL -- Module : /usr/lib/x86_64-linux-gnu/cmake/Qt5Widgets -- Enabling GUI support -- Enabling OpenGL support -- Enabling GPU support (OpenGL: ON, CUDA: ON) -- Build type specified as Release -- Enabling SIMD support -- Disabling interprocedural optimization -- Disabling ccache support -- Disabling profiling support -- Configuring PoseLib... -- Configuring PoseLib... done -- Configuring COLMAP... done -- Disabling ccache support -- Configuring done (15.4s) -- Generating done (0.0s) -- Build files have been written to: /home/warlock/git/glomap/build warlock@honey-gold:~/git/glomap/build$ ninja [40/288] Building CXX object _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/solvers/relpose_6pt_focal.cc.o FAILED: _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/solvers/relpose_6pt_focal.cc.o /usr/bin/c++ -DGLOG_VERSION_MAJOR=0 -DGLOG_VERSION_MINOR=6 -DPOSELIB_DEBUG=0 -I/home/warlock/git/glomap/build/_deps/poselib-src -I/home/warlock/git/glomap/build/_deps/poselib-build/generated_headers -isystem /usr/include/eigen3 -O3 -DNDEBUG -std=gnu++17 -march=native -Wall -Werror -fPIC -Wno-ignored-optimization-argument -Wno-maybe-uninitialized -MD -MT _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/solvers/relpose_6pt_focal.cc.o -MF _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/solvers/relpose_6pt_focal.cc.o.d -o _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/solvers/relpose_6pt_focal.cc.o -c /home/warlock/git/glomap/build/_deps/poselib-src/PoseLib/solvers/relpose_6pt_focal.cc In file included from /usr/lib/gcc/x86_64-linux-gnu/13/include/immintrin.h:53, from /usr/include/eigen3/Eigen/src/Core/util/ConfigureVectorization.h:361, from /usr/include/eigen3/Eigen/Core:22, from /usr/include/eigen3/Eigen/Dense:1, from /home/warlock/git/glomap/build/_deps/poselib-src/PoseLib/misc/sturm.h:30, from /home/warlock/git/glomap/build/_deps/poselib-src/PoseLib/solvers/relpose_6pt_focal.cc:1: In function ‘__m512d _mm512_loadu_pd(const void*)’, inlined from ‘Packet Eigen::internal::ploadu(const typename unpacket_traits<T>::type*) [with Packet = __vector(8) double]’ at /usr/include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h:698:52, inlined from ‘Packet Eigen::internal::ploadt(const typename unpacket_traits<T>::type*) [with Packet = __vector(8) double; int Alignment = 0]’ at /usr/include/eigen3/Eigen/src/Core/GenericPacketMath.h:969:26, inlined from ‘PacketType Eigen::internal::mapbase_evaluator<Derived, PlainObjectType>::packet(Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(8) double; Derived = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>; PlainObjectType = Eigen::Matrix<double, -1, 1, 0, 7, 1>]’ at /usr/include/eigen3/Eigen/src/Core/CoreEvaluators.h:944:50, inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacket(Eigen::Index) [with int StoreMode = 64; int LoadMode = 0; PacketType = __vector(8) double; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false> >; Functor = Eigen::internal::assign_op<double, double>; int Version = 0]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:681:114, inlined from ‘static void Eigen::internal::dense_assignment_loop<Kernel, 3, 0>::run(Kernel&) [with Kernel = Eigen::internal::generic_dense_assignment_kernel<Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false> >, Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false> >, Eigen::internal::assign_op<double, double>, 0>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:437:75, inlined from ‘void Eigen::internal::call_dense_assignment_loop(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>; SrcXprType = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>; Functor = assign_op<double, double>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:785:37, inlined from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>; SrcXprType = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>; Functor = Eigen::internal::assign_op<double, double>; Weak = void]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:954:31, inlined from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>; Src = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>; Func = assign_op<double, double>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:890:49, inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&, const Func&, typename enable_if<(! evaluator_assume_aliasing<Src>::value), void*>::type) [with Dst = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>; Src = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>; Func = assign_op<double, double>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:858:27, inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&) [with Dst = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>; Src = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:18, inlined from ‘Derived& Eigen::MatrixBase<Derived>::operator=(const Eigen::MatrixBase<Derived>&) [with Derived = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>]’ at /usr/include/eigen3/Eigen/src/Core/Assign.h:57:28, inlined from ‘Derived& Eigen::MapBase<Derived, 1>::operator=(const Eigen::MapBase<Derived, 1>&) [with Derived = Eigen::Block<Eigen::Matrix<double, 7, 1, 0, 7, 1>, -1, 1, false>]’ at /usr/include/eigen3/Eigen/src/Core/MapBase.h:294:39, inlined from ‘Eigen::internal::BlockImpl_dense<XprType, BlockRows, BlockCols, InnerPanel, true>& Eigen::internal::BlockImpl_dense<XprType, BlockRows, BlockCols, InnerPanel, true>::operator=(const Eigen::internal::BlockImpl_dense<XprType, BlockRows, BlockCols, InnerPanel, true>&) [with XprType = Eigen::Matrix<double, 7, 1, 0, 7, 1>; int BlockRows = -1; int BlockCols = 1; bool InnerPanel = false]’ at /usr/include/eigen3/Eigen/src/Core/Block.h:341:5, inlined from ‘Eigen::BlockImpl<XprType, BlockRows, BlockCols, InnerPanel, Eigen::Dense>& Eigen::BlockImpl<XprType, BlockRows, BlockCols, InnerPanel, Eigen::Dense>::operator=(const Eigen::BlockImpl<XprType, BlockRows, BlockCols, InnerPanel, Eigen::Dense>&) [with XprType = Eigen::Matrix<double, 7, 1, 0, 7, 1>; int BlockRows = -1; int BlockCols = 1; bool InnerPanel = false]’ at /usr/include/eigen3/Eigen/src/Core/Block.h:161:5, inlined from ‘Eigen::Block<XprType, BlockRows, BlockCols, InnerPanel>& Eigen::Block<XprType, BlockRows, BlockCols, InnerPanel>::operator=(const Eigen::Block<XprType, BlockRows, BlockCols, InnerPanel>&) [with XprType = Eigen::Matrix<double, 7, 1, 0, 7, 1>; int BlockRows = -1; int BlockCols = 1; bool InnerPanel = false]’ at /usr/include/eigen3/Eigen/src/Core/Block.h:111:5, inlined from ‘void Eigen::HouseholderQR<MatrixType>::_solve_impl(const RhsType&, DstType&) const [with RhsType = Eigen::CwiseUnaryOp<Eigen::internal::scalar_opposite_op<double>, const Eigen::Block<Eigen::Matrix<double, 8, 8>, 7, 1, false> >; DstType = Eigen::Matrix<double, 7, 1, 0, 7, 1>; _MatrixType = Eigen::Matrix<double, 7, 7, 0, 7, 7>]’ at /usr/include/eigen3/Eigen/src/QR/HouseholderQR.h:373:21: /usr/lib/gcc/x86_64-linux-gnu/13/include/avx512fintrin.h:6301:24: error: array subscript ‘__m512d_u[0]’ is partly outside array bounds of ‘Eigen::MatrixBase<Eigen::CwiseUnaryOp<Eigen::internal::scalar_opposite_op<double>, const Eigen::Block<Eigen::Matrix<double, 8, 8>, 7, 1, false> > >::PlainObject [1]’ {aka ‘Eigen::Matrix<double, 7, 1, 0, 7, 1> [1]’} [-Werror=array-bounds=] 6301 | return *(__m512d_u *)__P; | ^~~ In file included from /usr/include/eigen3/Eigen/QR:34, from /usr/include/eigen3/Eigen/Dense:4: /usr/include/eigen3/Eigen/src/QR/HouseholderQR.h: In member function ‘void Eigen::HouseholderQR<MatrixType>::_solve_impl(const RhsType&, DstType&) const [with RhsType = Eigen::CwiseUnaryOp<Eigen::internal::scalar_opposite_op<double>, const Eigen::Block<Eigen::Matrix<double, 8, 8>, 7, 1, false> >; DstType = Eigen::Matrix<double, 7, 1, 0, 7, 1>; _MatrixType = Eigen::Matrix<double, 7, 7, 0, 7, 7>]’: /usr/include/eigen3/Eigen/src/QR/HouseholderQR.h:365:33: note: at offset [0, 48] into object ‘c’ of size 56 365 | typename RhsType::PlainObject c(rhs); | ^ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-ignored-optimization-argument’ may have been intended to silence earlier diagnostics cc1plus: all warnings being treated as errors [48/288] Building CXX object _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/misc/decompositions.cc.o FAILED: _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/misc/decompositions.cc.o /usr/bin/c++ -DGLOG_VERSION_MAJOR=0 -DGLOG_VERSION_MINOR=6 -DPOSELIB_DEBUG=0 -I/home/warlock/git/glomap/build/_deps/poselib-src -I/home/warlock/git/glomap/build/_deps/poselib-build/generated_headers -isystem /usr/include/eigen3 -O3 -DNDEBUG -std=gnu++17 -march=native -Wall -Werror -fPIC -Wno-ignored-optimization-argument -Wno-maybe-uninitialized -MD -MT _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/misc/decompositions.cc.o -MF _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/misc/decompositions.cc.o.d -o _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/misc/decompositions.cc.o -c /home/warlock/git/glomap/build/_deps/poselib-src/PoseLib/misc/decompositions.cc In file included from /usr/lib/gcc/x86_64-linux-gnu/13/include/immintrin.h:53, from /usr/include/eigen3/Eigen/src/Core/util/ConfigureVectorization.h:361, from /usr/include/eigen3/Eigen/Core:22, from /usr/include/eigen3/Eigen/Dense:1, from /home/warlock/git/glomap/build/_deps/poselib-src/PoseLib/misc/colmap_models.h:32, from /home/warlock/git/glomap/build/_deps/poselib-src/PoseLib/misc/decompositions.h:4, from /home/warlock/git/glomap/build/_deps/poselib-src/PoseLib/misc/decompositions.cc:1: In function ‘__m512d _mm512_loadu_pd(const void*)’, inlined from ‘Packet Eigen::internal::ploadu(const typename unpacket_traits<T>::type*) [with Packet = __vector(8) double]’ at /usr/include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h:698:52, inlined from ‘Packet Eigen::internal::ploadt(const typename unpacket_traits<T>::type*) [with Packet = __vector(8) double; int Alignment = 0]’ at /usr/include/eigen3/Eigen/src/Core/GenericPacketMath.h:969:26, inlined from ‘PacketType Eigen::internal::mapbase_evaluator<Derived, PlainObjectType>::packet(Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(8) double; Derived = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; PlainObjectType = Eigen::Matrix<double, -1, 1, 0, 4, 1>]’ at /usr/include/eigen3/Eigen/src/Core/CoreEvaluators.h:944:50, inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacket(Eigen::Index) [with int StoreMode = 64; int LoadMode = 0; PacketType = __vector(8) double; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false> >; Functor = Eigen::internal::assign_op<double, double>; int Version = 0]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:681:114, inlined from ‘static void Eigen::internal::dense_assignment_loop<Kernel, 3, 0>::run(Kernel&) [with Kernel = Eigen::internal::generic_dense_assignment_kernel<Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false> >, Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false> >, Eigen::internal::assign_op<double, double>, 0>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:437:75, inlined from ‘void Eigen::internal::call_dense_assignment_loop(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>; SrcXprType = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; Functor = assign_op<double, double>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:785:37, inlined from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>; SrcXprType = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; Functor = Eigen::internal::assign_op<double, double>; Weak = void]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:954:31, inlined from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>; Src = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; Func = assign_op<double, double>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:890:49, inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&, const Func&, typename enable_if<(! evaluator_assume_aliasing<Src>::value), void*>::type) [with Dst = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>; Src = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; Func = assign_op<double, double>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:858:27, inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&) [with Dst = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>; Src = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:18, inlined from ‘Derived& Eigen::MatrixBase<Derived>::operator=(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; Derived = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>]’ at /usr/include/eigen3/Eigen/src/Core/Assign.h:66:28, inlined from ‘void Eigen::HouseholderQR<MatrixType>::_solve_impl(const RhsType&, DstType&) const [with RhsType = Eigen::CwiseUnaryOp<Eigen::internal::scalar_opposite_op<double>, const Eigen::Block<Eigen::Matrix<double, 4, 4>, 4, 1, true> >; DstType = Eigen::Matrix<double, 3, 1>; _MatrixType = Eigen::Matrix<double, 4, -1, 0, 4, 4>]’ at /usr/include/eigen3/Eigen/src/QR/HouseholderQR.h:373:21: /usr/lib/gcc/x86_64-linux-gnu/13/include/avx512fintrin.h:6301:24: error: array subscript ‘__m512d_u[0]’ is partly outside array bounds of ‘Eigen::MatrixBase<Eigen::CwiseUnaryOp<Eigen::internal::scalar_opposite_op<double>, const Eigen::Block<Eigen::Matrix<double, 4, 4>, 4, 1, true> > >::PlainObject [1]’ {aka ‘Eigen::Matrix<double, 4, 1> [1]’} [-Werror=array-bounds=] 6301 | return *(__m512d_u *)__P; | ^~~ In file included from /usr/include/eigen3/Eigen/QR:34, from /usr/include/eigen3/Eigen/Dense:4: /usr/include/eigen3/Eigen/src/QR/HouseholderQR.h: In member function ‘void Eigen::HouseholderQR<MatrixType>::_solve_impl(const RhsType&, DstType&) const [with RhsType = Eigen::CwiseUnaryOp<Eigen::internal::scalar_opposite_op<double>, const Eigen::Block<Eigen::Matrix<double, 4, 4>, 4, 1, true> >; DstType = Eigen::Matrix<double, 3, 1>; _MatrixType = Eigen::Matrix<double, 4, -1, 0, 4, 4>]’: /usr/include/eigen3/Eigen/src/QR/HouseholderQR.h:365:33: note: object ‘c’ of size 32 365 | typename RhsType::PlainObject c(rhs); | ^ In function ‘void _mm512_store_pd(void*, __m512d)’, inlined from ‘void Eigen::internal::pstore(Scalar*, const Packet&) [with Scalar = double; Packet = __vector(8) double]’ at /usr/include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h:775:44, inlined from ‘void Eigen::internal::pstoret(Scalar*, const Packet&) [with Scalar = double; Packet = __vector(8) double; int Alignment = 64]’ at /usr/include/eigen3/Eigen/src/Core/GenericPacketMath.h:978:11, inlined from ‘void Eigen::internal::assign_op<DstScalar, SrcScalar>::assignPacket(DstScalar*, const Packet&) const [with int Alignment = 64; Packet = __vector(8) double; DstScalar = double; SrcScalar = double]’ at /usr/include/eigen3/Eigen/src/Core/functors/AssignmentFunctors.h:28:50, inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacket(Eigen::Index) [with int StoreMode = 64; int LoadMode = 0; PacketType = __vector(8) double; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false> >; Functor = Eigen::internal::assign_op<double, double>; int Version = 0]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:681:47, inlined from ‘static void Eigen::internal::dense_assignment_loop<Kernel, 3, 0>::run(Kernel&) [with Kernel = Eigen::internal::generic_dense_assignment_kernel<Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false> >, Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false> >, Eigen::internal::assign_op<double, double>, 0>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:437:75, inlined from ‘void Eigen::internal::call_dense_assignment_loop(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>; SrcXprType = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; Functor = assign_op<double, double>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:785:37, inlined from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>; SrcXprType = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; Functor = Eigen::internal::assign_op<double, double>; Weak = void]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:954:31, inlined from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>; Src = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; Func = assign_op<double, double>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:890:49, inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&, const Func&, typename enable_if<(! evaluator_assume_aliasing<Src>::value), void*>::type) [with Dst = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>; Src = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; Func = assign_op<double, double>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:858:27, inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&) [with Dst = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>; Src = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>]’ at /usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:18, inlined from ‘Derived& Eigen::MatrixBase<Derived>::operator=(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::Block<Eigen::Matrix<double, 4, 1>, -1, 1, false>; Derived = Eigen::Block<Eigen::Matrix<double, 3, 1>, -1, 1, false>]’ at /usr/include/eigen3/Eigen/src/Core/Assign.h:66:28, inlined from ‘void Eigen::HouseholderQR<MatrixType>::_solve_impl(const RhsType&, DstType&) const [with RhsType = Eigen::CwiseUnaryOp<Eigen::internal::scalar_opposite_op<double>, const Eigen::Block<Eigen::Matrix<double, 4, 4>, 4, 1, true> >; DstType = Eigen::Matrix<double, 3, 1>; _MatrixType = Eigen::Matrix<double, 4, -1, 0, 4, 4>]’ at /usr/include/eigen3/Eigen/src/QR/HouseholderQR.h:373:21: /usr/lib/gcc/x86_64-linux-gnu/13/include/avx512fintrin.h:416:20: error: ‘void* __builtin_memcpy(void*, const void*, long unsigned int)’ reading 64 or more bytes from a region of size 32 [-Werror=stringop-overread] 416 | *(__m512d *) __P = __A; | ~~~~~~~~~~~~~~~~~^~~~~ /usr/include/eigen3/Eigen/src/QR/HouseholderQR.h: In member function ‘void Eigen::HouseholderQR<MatrixType>::_solve_impl(const RhsType&, DstType&) const [with RhsType = Eigen::CwiseUnaryOp<Eigen::internal::scalar_opposite_op<double>, const Eigen::Block<Eigen::Matrix<double, 4, 4>, 4, 1, true> >; DstType = Eigen::Matrix<double, 3, 1>; _MatrixType = Eigen::Matrix<double, 4, -1, 0, 4, 4>]’: /usr/include/eigen3/Eigen/src/QR/HouseholderQR.h:365:33: note: source object ‘c’ of size 32 365 | typename RhsType::PlainObject c(rhs); | ^ At global scope: cc1plus: note: unrecognized command-line option ‘-Wno-ignored-optimization-argument’ may have been intended to silence earlier diagnostics cc1plus: all warnings being treated as errors [49/288] Building CXX object _deps/poselib-build/PoseLib/CMakeFiles/PoseLib.dir/robust/bundle.cc.o ninja: build stopped: subcommand failed.

@fb82
Copy link
Author

fb82 commented Dec 22, 2024

update: no problem disabling FETCH_COLMAP and FETCH_POSELIB from CMake options

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant