colmap / glomap

GLOMAP - Global Structured-from-Motion Revisited
BSD 3-Clause "New" or "Revised" License
1.3k stars 77 forks source link

Build Error: Eigen/CholmodSupport cholmod.h: No such file or directory #22

Closed aapatni closed 1 month ago

aapatni commented 1 month ago

Error:

FAILED: glomap/CMakeFiles/glomap.dir/estimators/global_rotation_averaging.cc.o 
/usr/bin/c++ -DBOOST_ALL_NO_LIB -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_GRAPH_DYN_LINK -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_REGEX_DYN_LINK -DCERES_EXPORT_INTERNAL_SYMBOLS -DGFLAGS_IS_A_DLL=0 -DGOOGLE_GLOG_DLL_DECL="" -DGOOGLE_GLOG_DLL_DECL_FOR_UNITTESTS="" -DPOSELIB_DEB
UG=0 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -I/root/glomap/glomap/.. -I/root/glomap/build/_deps/colmap-src/src -I/root/glomap/buil
d/_deps/poselib-src -I/root/glomap/build/_deps/poselib-build/generated_headers -isystem /usr/include/eigen3 -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -isystem /usr/lib/x86_64-linux-gnu
/qt5/mkspecs/linux-g++ -isystem /usr/include/x86_64-linux-gnu/qt5/QtOpenGL -isystem /usr/include/x86_64-linux-gnu/qt5/QtWidgets -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/local/cuda/targets/x86_64-linux/include -O3 -DNDEBUG -std=gnu++17 -fPIC -Wall -
Werror -Wno-sign-compare -Wno-unused-variable -fopenmp -MD -MT glomap/CMakeFiles/glomap.dir/estimators/global_rotation_averaging.cc.o -MF glomap/CMakeFiles/glomap.dir/estimators/global_rotation_averaging.cc.o.d -o glomap/CMakeFiles/glomap.dir/estimators/global_rotation_
averaging.cc.o -c /root/glomap/glomap/estimators/global_rotation_averaging.cc
In file included from /root/glomap/glomap/../glomap/math/l1_solver.h:10,
                 from /root/glomap/glomap/estimators/global_rotation_averaging.h:3,
                 from /root/glomap/glomap/estimators/global_rotation_averaging.cc:1:
/usr/include/eigen3/Eigen/CholmodSupport:16:12: fatal error: cholmod.h: No such file or directory
   16 |   #include <cholmod.h>
      |            ^~~~~~~~~~~
compilation terminated.
[222/278] Building CXX object glomap/CMakeFiles/glomap.dir/controllers/global_mapper.cc.o
FAILED: glomap/CMakeFiles/glomap.dir/controllers/global_mapper.cc.o  
/usr/bin/c++ -DBOOST_ALL_NO_LIB -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_GRAPH_DYN_LINK -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_REGEX_DYN_LINK -DCERES_EXPORT_INTERNAL_SYMBOLS -DGFLAGS_IS_A_DLL=0 -DGOOGLE_GLOG_DLL_DECL="" -DGOOGLE_GLOG_DLL_DECL_FOR_UNITTESTS="" -DPOSELIB_DEB
UG=0 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -I/root/glomap/glomap/.. -I/root/glomap/build/_deps/colmap-src/src -I/root/glomap/buil
d/_deps/poselib-src -I/root/glomap/build/_deps/poselib-build/generated_headers -isystem /usr/include/eigen3 -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -isystem /usr/lib/x86_64-linux-gnu
/qt5/mkspecs/linux-g++ -isystem /usr/include/x86_64-linux-gnu/qt5/QtOpenGL -isystem /usr/include/x86_64-linux-gnu/qt5/QtWidgets -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/local/cuda/targets/x86_64-linux/include -O3 -DNDEBUG -std=gnu++17 -fPIC -Wall -
Werror -Wno-sign-compare -Wno-unused-variable -fopenmp -MD -MT glomap/CMakeFiles/glomap.dir/controllers/global_mapper.cc.o -MF glomap/CMakeFiles/glomap.dir/controllers/global_mapper.cc.o.d -o glomap/CMakeFiles/glomap.dir/controllers/global_mapper.cc.o -c /root/glomap/glomap/controllers/global_mapper.cc
In file included from /root/glomap/glomap/../glomap/math/l1_solver.h:10,
                 from /root/glomap/glomap/../glomap/estimators/global_rotation_averaging.h:3,
                 from /root/glomap/glomap/controllers/global_mapper.h:7,
                 from /root/glomap/glomap/controllers/global_mapper.cc:1:
/usr/include/eigen3/Eigen/CholmodSupport:16:12: fatal error: cholmod.h: No such file or directory
   16 |   #include <cholmod.h>
      |            ^~~~~~~~~~~
compilation terminated.

Build Environment:

Ubuntu 22.04

-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0 
Enabling CUDA support (version: 12.4.131, archs: native)

COLMAP 3.11.0.dev0 -- Structure-from-Motion and Multi-View Stereo
(Commit 66fd8e56 on 2024-07-31 with CUDA)

cmake version 3.30.1

nvcc --version
Built on Thu_Mar_28_02:18:24_PDT_2024
Cuda compilation tools, release 12.4, V12.4.131
Build cuda_12.4.r12.4/compiler.34097967_0

gcc --version
gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0

-- Found required Ceres dependency: Eigen version 3.4.0 in /usr/include/eigen3
-- Found Ceres version: 2.0.0 installed in: /usr with components: [EigenSparse, SparseLinearAlgebraLibrary, LAPACK, SuiteSparse, CXSparse, SchurSpecializations, Multithreading]
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.74.0/BoostConfig.cmake (found version "1.74.0")

Has anyone faced this error building? Appreciate any pointers

Goulustis commented 1 month ago

https://github.com/colmap/glomap/issues/4#issuecomment-2257382817

aapatni commented 1 month ago

thank you! completely missed that (filtered for open issues 😶‍🌫️ )