bytedance / particle-sfm

ParticleSfM: Exploiting Dense Point Trajectories for Localizing Moving Cameras in the Wild. ECCV 2022.
http://b1ueber2y.me/projects/ParticleSfM/
GNU General Public License v3.0
285 stars 23 forks source link

Issue building gmapper #5

Closed jaymefosa closed 1 year ago

jaymefosa commented 2 years ago

All of the installs seem to go well except for the very last step. Maybe there's a problem finding the linked ceres from theia?


:~/projects/particle-sfm/sfm/gmapper/build$ cmake ..
-- The C compiler identification is GNU 9.4.0
-- The CXX compiler identification is GNU 9.4.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
-- Found OpenMP: /usr/lib/gcc/x86_64-linux-gnu/8/include  
-- Found required Theia dependency: Eigen version 3.3.7 in /usr/include/eigen3
**-- Found required Theia dependency: Ceres in** 
-- Found required Theia dependency: Glog in /usr/include
-- No preference for use of exported gflags CMake configuration set, and no hints for include/library directories provided. Defaulting to preferring an installed/exported gflags CMake configuration if available.
-- Found installed version of gflags: /usr/lib/x86_64-linux-gnu/cmake/gflags
-- Detected gflags version: 2.2.2
-- Found required Theia dependency: Google Flags in /usr/include in namespace: google
-- Found Theia dependency: OpenImageIO in /usr/include
CMake Warning (dev) at /usr/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (ROCKSDB)
  does not match the name of the calling package (RocksDB).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  /usr/local/share/Theia/FindRocksDB.cmake:117 (find_package_handle_standard_args)
  /usr/local/share/Theia/TheiaConfig.cmake:172 (find_package)
  CMakeLists.txt:33 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found ROCKSDB: /usr/lib/librocksdb.so  
-- Found RocksDB
-- Found RocksDB: 
-- Found Threads: TRUE  
-- 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 COLAMD headers in: /usr/include/suitesparse
-- Found COLAMD library: /usr/lib/x86_64-linux-gnu/libcolamd.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 SUITESPARSEQR headers in: /usr/include/suitesparse
-- Found SUITESPARSEQR library: /usr/lib/x86_64-linux-gnu/libspqr.so
-- Did not find TBB library (optional SuiteSparse dependency)
-- Did not find Intel TBB library, assuming SuiteSparseQR was not compiled with TBB.
-- Found SUITESPARSE_CONFIG headers in: /usr/include/suitesparse
-- Found SUITESPARSE_CONFIG library: /usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so
-- Found LIBRT library: /usr/lib/x86_64-linux-gnu/librt.so
-- Adding librt: /usr/lib/x86_64-linux-gnu/librt.so to SuiteSparse_config libraries (required on Linux & Unix [not OSX] if SuiteSparse is compiled with timing).
-- Found METIS library: /usr/lib/x86_64-linux-gnu/libmetis.so
-- Found SuiteSparse 5.7.1
-- Found Theia version: 0.7.0 installed in: /usr/local
-- Found required Ceres dependency: Eigen version 3.3.7 in /usr/include/eigen3
-- Found required Ceres dependency: glog
-- Found required Ceres dependency: gflags
-- Found Ceres version: 2.0.0 installed in: /usr/local with components: [EigenSparse, SparseLinearAlgebraLibrary, LAPACK, SuiteSparse, CXSparse, SchurSpecializations, Multithreading]
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found version "1.71.0") found components: program_options filesystem system unit_test_framework 
-- Found Eigen3: /usr/include/eigen3 (Required is at least version "2.91.0") 
-- Found Eigen
--   Includes : /usr/include/eigen3
-- Found FreeImage
--   Includes : /usr/include
--   Libraries : /usr/lib/x86_64-linux-gnu/libfreeimage.so
-- Found Glog
--   Includes : /usr/include
--   Libraries : /usr/lib/x86_64-linux-gnu/libglog.so
CMake Warning (dev) at /usr/share/cmake-3.24/Modules/FindOpenGL.cmake:315 (message):
  Policy CMP0072 is not set: FindOpenGL prefers GLVND by default when
  available.  Run "cmake --help-policy CMP0072" for policy details.  Use the
  cmake_policy command to set the policy and suppress this warning.

  FindOpenGL found both a legacy GL library:

    OPENGL_gl_LIBRARY: /usr/lib/x86_64-linux-gnu/libGL.so

  and GLVND libraries for OpenGL and GLX:

    OPENGL_opengl_LIBRARY: /usr/lib/x86_64-linux-gnu/libOpenGL.so
    OPENGL_glx_LIBRARY: /usr/lib/x86_64-linux-gnu/libGLX.so

  OpenGL_GL_PREFERENCE has not been set to "GLVND" or "LEGACY", so for
  compatibility with CMake 3.10 and below the legacy GL library will be used.
Call Stack (most recent call first):
  /usr/local/share/colmap/COLMAPConfig.cmake:109 (find_package)
  CMakeLists.txt:34 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so   
-- Found Glew
--   Includes : /usr/include
--   Libraries : /usr/lib/x86_64-linux-gnu/libGLEW.so
-- Using header-only CGAL
-- Targetting Unix Makefiles
-- 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.71.0/BoostConfig.cmake (found suitable version "1.71.0", minimum required is "1.48")  
-- Boost include dirs: /usr/include
-- Boost libraries:    
-- Using gcc version 4 or later. Adding -frounding-math
-- Build type not specified, using Release
-- Enabling SIMD support
-- Enabling OpenMP support
-- Disabling interprocedural optimization
-- Disabling profiling support
-- OpenMP: 
-- Configuring done
-- Generating done
-- Build files have been written to: particle-sfm/sfm/gmapper/build
:~/projects/particle-sfm/sfm/gmapper/build$ make -j
[  4%] Building CXX object src/CMakeFiles/gcolmap.dir/base/correspondence_graph.cc.o
[ 14%] Building CXX object src/CMakeFiles/gcolmap.dir/base/database_cache.cc.o
[ 14%] Building CXX object src/CMakeFiles/gcolmap.dir/base/reconstruction.cc.o
[ 23%] Building CXX object src/CMakeFiles/gcolmap.dir/base/reconstruction_manager.cc.o
[ 23%] Building CXX object src/CMakeFiles/gcolmap.dir/estimators/two_view_geometry.cc.o
[ 28%] Building CXX object src/CMakeFiles/gcolmap.dir/global/linear_position_estimator.cc.o
[ 38%] Building CXX object src/CMakeFiles/gcolmap.dir/controllers/global_mapper.cc.o
[ 38%] Building CXX object src/CMakeFiles/gcolmap.dir/global/nonlinear_position_estimator.cc.o
[ 47%] Building CXX object src/CMakeFiles/gcolmap.dir/global/orientation_util.cc.o
[ 47%] Building CXX object src/CMakeFiles/gcolmap.dir/global/filter_util.cc.o
[ 52%] Building CXX object src/CMakeFiles/gcolmap.dir/global/robust_rotation_estimator.cc.o
[ 57%] Building CXX object src/CMakeFiles/gcolmap.dir/global/known_rotation_util.cc.o
[ 61%] Building CXX object src/CMakeFiles/gcolmap.dir/global/triplet_util.cc.o
[ 66%] Building CXX object src/CMakeFiles/gcolmap.dir/global/least_unsquared_deviation_position_estimator.cc.o
[ 71%] Building CXX object src/CMakeFiles/gcolmap.dir/optim/bundle_adjustment.cc.o
[ 76%] Building CXX object src/CMakeFiles/gcolmap.dir/sfm/incremental_triangulator.cc.o
[ 80%] Building CXX object src/CMakeFiles/gcolmap.dir/sfm/global_mapper.cc.o
[ 85%] Building CXX object src/CMakeFiles/gcolmap.dir/util/option_manager.cc.o
[ 90%] Linking CXX static library libgcolmap.a
[ 90%] Built target gcolmap
[ 95%] Building CXX object src/exe/CMakeFiles/gcolmap_exe.dir/gcolmap.cc.o
[100%] Linking CXX executable gcolmap
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `colmap::RefineRelativePose(ceres::Solver::Options const&, std::vector<Eigen::Matrix<double, 2, 1, 0, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1, 0, 2, 1> > > const&, std::vector<Eigen::Matrix<double, 2, 1, 0, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1, 0, 2, 1> > > const&, Eigen::Matrix<double, 4, 1, 0, 4, 1>*, Eigen::Matrix<double, 3, 1, 0, 3, 1>*)':
pose.cc:(.text+0x13c): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: pose.cc:(.text+0x1fe): undefined reference to `vtable for ceres::QuaternionManifold'
/usr/bin/ld: pose.cc:(.text+0x211): undefined reference to `ceres::Problem::SetManifold(double*, ceres::Manifold*)'
/usr/bin/ld: pose.cc:(.text+0x240): undefined reference to `ceres::Problem::SetManifold(double*, ceres::Manifold*)'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `colmap::RefineAbsolutePose(colmap::AbsolutePoseRefinementOptions const&, std::vector<char, std::allocator<char> > const&, std::vector<Eigen::Matrix<double, 2, 1, 0, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1, 0, 2, 1> > > const&, std::vector<Eigen::Matrix<double, 3, 1, 0, 3, 1>, std::allocator<Eigen::Matrix<double, 3, 1, 0, 3, 1> > > const&, Eigen::Matrix<double, 4, 1, 0, 4, 1>*, Eigen::Matrix<double, 3, 1, 0, 3, 1>*, colmap::Camera*, Eigen::Matrix<double, 6, 6, 0, 6, 6>*)':
pose.cc:(.text+0x1508): undefined reference to `vtable for ceres::QuaternionManifold'
/usr/bin/ld: pose.cc:(.text+0x151c): undefined reference to `ceres::Problem::SetManifold(double*, ceres::Manifold*)'
/usr/bin/ld: pose.cc:(.text+0x15d9): undefined reference to `ceres::SubsetManifold::SubsetManifold(int, std::vector<int, std::allocator<int> > const&)'
/usr/bin/ld: pose.cc:(.text+0x15e7): undefined reference to `ceres::Problem::SetManifold(double*, ceres::Manifold*)'
/usr/bin/ld: pose.cc:(.text+0x170b): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: pose.cc:(.text+0x17cb): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: pose.cc:(.text+0x188b): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: pose.cc:(.text+0x1a6b): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: pose.cc:(.text+0x1b2b): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `colmap::RefineGeneralizedAbsolutePose(colmap::AbsolutePoseRefinementOptions const&, std::vector<char, std::allocator<char> > const&, std::vector<Eigen::Matrix<double, 2, 1, 0, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1, 0, 2, 1> > > const&, std::vector<Eigen::Matrix<double, 3, 1, 0, 3, 1>, std::allocator<Eigen::Matrix<double, 3, 1, 0, 3, 1> > > const&, std::vector<unsigned long, std::allocator<unsigned long> > const&, std::vector<Eigen::Matrix<double, 4, 1, 0, 4, 1>, std::allocator<Eigen::Matrix<double, 4, 1, 0, 4, 1> > > const&, std::vector<Eigen::Matrix<double, 3, 1, 0, 3, 1>, std::allocator<Eigen::Matrix<double, 3, 1, 0, 3, 1> > > const&, Eigen::Matrix<double, 4, 1, 0, 4, 1>*, Eigen::Matrix<double, 3, 1, 0, 3, 1>*, std::vector<colmap::Camera, std::allocator<colmap::Camera> >*, Eigen::Matrix<double, 6, 6, 0, 6, 6>*)':
pose.cc:(.text+0x2c2f): undefined reference to `vtable for ceres::QuaternionManifold'
/usr/bin/ld: pose.cc:(.text+0x2c43): undefined reference to `ceres::Problem::SetManifold(double*, ceres::Manifold*)'
/usr/bin/ld: pose.cc:(.text+0x2c7a): undefined reference to `ceres::SubsetManifold::SubsetManifold(int, std::vector<int, std::allocator<int> > const&)'
/usr/bin/ld: pose.cc:(.text+0x2c88): undefined reference to `ceres::Problem::SetManifold(double*, ceres::Manifold*)'
/usr/bin/ld: pose.cc:(.text+0x2fdd): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::AutoDiffCostFunction<colmap::RigBundleAdjustmentCostFunction<colmap::ThinPrismFisheyeCameraModel>, 2, 4, 3, 4, 3, 3, 12>::~AutoDiffCostFunction()':
pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_27ThinPrismFisheyeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi12EEED2Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_27ThinPrismFisheyeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi12EEED5Ev]+0x44): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::AutoDiffCostFunction<colmap::RigBundleAdjustmentCostFunction<colmap::FOVCameraModel>, 2, 4, 3, 4, 3, 3, 5>::~AutoDiffCostFunction()':
pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_14FOVCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi5EEED2Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_14FOVCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi5EEED5Ev]+0x44): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::AutoDiffCostFunction<colmap::RigBundleAdjustmentCostFunction<colmap::FullOpenCVCameraModel>, 2, 4, 3, 4, 3, 3, 12>::~AutoDiffCostFunction()':
pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_21FullOpenCVCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi12EEED2Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_21FullOpenCVCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi12EEED5Ev]+0x44): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::AutoDiffCostFunction<colmap::RigBundleAdjustmentCostFunction<colmap::OpenCVFisheyeCameraModel>, 2, 4, 3, 4, 3, 3, 8>::~AutoDiffCostFunction()':
pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_24OpenCVFisheyeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi8EEED2Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_24OpenCVFisheyeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi8EEED5Ev]+0x44): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::AutoDiffCostFunction<colmap::RigBundleAdjustmentCostFunction<colmap::OpenCVCameraModel>, 2, 4, 3, 4, 3, 3, 8>::~AutoDiffCostFunction()':
pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_17OpenCVCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi8EEED2Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_17OpenCVCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi8EEED5Ev]+0x44): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o):pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_24RadialFisheyeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi5EEED2Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_24RadialFisheyeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi5EEED5Ev]+0x44): more undefined references to `ceres::CostFunction::~CostFunction()' follow
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::SphereManifold<3>::~SphereManifold()':
pose.cc:(.text._ZN5ceres14SphereManifoldILi3EED2Ev[_ZN5ceres14SphereManifoldILi3EED5Ev]+0x13): undefined reference to `ceres::Manifold::~Manifold()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::SphereManifold<3>::~SphereManifold()':
pose.cc:(.text._ZN5ceres14SphereManifoldILi3EED0Ev[_ZN5ceres14SphereManifoldILi3EED5Ev]+0x17): undefined reference to `ceres::Manifold::~Manifold()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::AutoDiffCostFunction<colmap::RigBundleAdjustmentCostFunction<colmap::RadialFisheyeCameraModel>, 2, 4, 3, 4, 3, 3, 5>::~AutoDiffCostFunction()':
pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_24RadialFisheyeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi5EEED0Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_24RadialFisheyeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi5EEED5Ev]+0x43): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::AutoDiffCostFunction<colmap::RigBundleAdjustmentCostFunction<colmap::RadialCameraModel>, 2, 4, 3, 4, 3, 3, 5>::~AutoDiffCostFunction()':
pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_17RadialCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi5EEED0Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_17RadialCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi5EEED5Ev]+0x43): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::AutoDiffCostFunction<colmap::RigBundleAdjustmentCostFunction<colmap::SimpleRadialFisheyeCameraModel>, 2, 4, 3, 4, 3, 3, 4>::~AutoDiffCostFunction()':
pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_30SimpleRadialFisheyeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi4EEED0Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_30SimpleRadialFisheyeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi4EEED5Ev]+0x43): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::AutoDiffCostFunction<colmap::RigBundleAdjustmentCostFunction<colmap::SimpleRadialCameraModel>, 2, 4, 3, 4, 3, 3, 4>::~AutoDiffCostFunction()':
pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_23SimpleRadialCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi4EEED0Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_23SimpleRadialCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi4EEED5Ev]+0x43): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::AutoDiffCostFunction<colmap::RigBundleAdjustmentCostFunction<colmap::PinholeCameraModel>, 2, 4, 3, 4, 3, 3, 4>::~AutoDiffCostFunction()':
pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_18PinholeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi4EEED0Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_18PinholeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi4EEED5Ev]+0x43): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o):pose.cc:(.text._ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_24SimplePinholeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi3EEED0Ev[_ZN5ceres20AutoDiffCostFunctionIN6colmap31RigBundleAdjustmentCostFunctionINS1_24SimplePinholeCameraModelEEELi2EJLi4ELi3ELi4ELi3ELi3ELi3EEED5Ev]+0x43): more undefined references to `ceres::CostFunction::~CostFunction()' follow
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::SizedCostFunction<2, 4, 3, 4, 3, 3, 4>::SizedCostFunction()':
pose.cc:(.text._ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi4EEEC2Ev[_ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi4EEEC5Ev]+0x1f): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: pose.cc:(.text._ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi4EEEC2Ev[_ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi4EEEC5Ev]+0xd8): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::SizedCostFunction<2, 4, 3, 4, 3, 3, 5>::SizedCostFunction()':
pose.cc:(.text._ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi5EEEC2Ev[_ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi5EEEC5Ev]+0x1f): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: pose.cc:(.text._ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi5EEEC2Ev[_ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi5EEEC5Ev]+0xd8): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::SizedCostFunction<2, 4, 3, 4, 3, 3, 8>::SizedCostFunction()':
pose.cc:(.text._ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi8EEEC2Ev[_ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi8EEEC5Ev]+0x1f): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: pose.cc:(.text._ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi8EEEC2Ev[_ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi8EEEC5Ev]+0xd8): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o): in function `ceres::SizedCostFunction<2, 4, 3, 4, 3, 3, 12>::SizedCostFunction()':
pose.cc:(.text._ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi12EEEC2Ev[_ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi12EEEC5Ev]+0x1f): undefined reference to `ceres::CostFunction::CostFunction()'
/usr/bin/ld: pose.cc:(.text._ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi12EEEC2Ev[_ZN5ceres17SizedCostFunctionILi2EJLi4ELi3ELi4ELi3ELi3ELi12EEEC5Ev]+0xd8): undefined reference to `ceres::CostFunction::~CostFunction()'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o):(.data.rel.ro._ZTIN5ceres14SphereManifoldILi3EEE[_ZTIN5ceres14SphereManifoldILi3EEE]+0x10): undefined reference to `typeinfo for ceres::Manifold'
/usr/bin/ld: /usr/local/share/colmap/../../lib/colmap/libcolmap.a(pose.cc.o):(.data.rel.ro._ZTVN5ceres14SphereManifoldILi3EEE[_ZTVN5ceres14SphereManifoldILi3EEE]+0x40): undefined reference to `ceres::Manifold::RightMultiplyByPlusJacobian(double const*, int, double const*, double*) const'
collect2: error: ld returned 1 exit status
make[2]: *** [src/exe/CMakeFiles/gcolmap_exe.dir/build.make:148: src/exe/gcolmap] Error 1
make[1]: *** [CMakeFiles/Makefile2:321: src/exe/CMakeFiles/gcolmap_exe.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
:~/projects/particle-sfm/sfm/gmapper/build$ 
B1ueber2y commented 2 years ago

Maybe you installed ceres with different version after installing COLMAP and TheiaSFM? You can try recompile and reinstall COLMAP and Theia, and then recompile gmapper. Thanks

jaymefosa commented 1 year ago

Yep recompiling Colmap again fixed it. The issue was as you described, compiling ceres then colmap then ceres-2.0.0 caused issues installing Gmapper. Thank you!