Why would this problem happen? I used your colmap version(without git clone or checkout): cmake & make. Then it's wring during the process of making
[ 50%] Building CXX object src/CMakeFiles/colmap.dir/mvs/meshing.cc.o
[ 50%] Building CXX object src/CMakeFiles/colmap.dir/optim/bundle_adjustment.cc.o
[ 50%] Building CXX object src/CMakeFiles/colmap.dir/ui/undistortion_widget.cc.o
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc: In function ‘bool colmap::RefineAbsolutePose(const colmap::AbsolutePoseRefinementOptions&, const std::vector&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, const std::vector<Eigen::Matrix<double, 3, 1> >&, Eigen::Vector4d, Eigen::Vector3d, colmap::Camera)’:
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:242:20: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type
242 | new ceres::QuaternionParameterization;
| ^~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:243:13: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
243 | problem.SetParameterization(qvec->data(), quaternion_parameterization);
| ^~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:276:16: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’?
276 | ceres::SubsetParameterization camera_params_parameterization =
| ^~~~~~
| LocalParameterization
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:276:40: error: ‘camera_params_parameterization’ was not declared in this scope
276 | ceres::SubsetParameterization camera_params_parameterization =
| ^~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:277:17: error: expected type-specifier
277 | new ceres::SubsetParameterization(
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:279:17: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
279 | problem.SetParameterization(camera->ParamsData(),
| ^~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc: In function ‘bool colmap::RefineRelativePose(const ceres::Solver::Options&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, Eigen::Vector4d, Eigen::Vector3d)’:
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:333:18: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type
333 | new ceres::QuaternionParameterization;
| ^~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:334:11: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
334 | problem.SetParameterization(qvec->data(), quaternion_parameterization);
| ^~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:336:10: error: ‘HomogeneousVectorParameterization’ is not a member of ‘ceres’
336 | ceres::HomogeneousVectorParameterization homogeneous_parameterization =
| ^~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:336:45: error: ‘homogeneous_parameterization’ was not declared in this scope; did you mean ‘quaternion_parameterization’?
336 | ceres::HomogeneousVectorParameterization homogeneous_parameterization =
| ^~~~~~~~
| quaternion_parameterization
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:337:11: error: expected type-specifier
337 | new ceres::HomogeneousVectorParameterization(3);
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:338:11: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
338 | problem.SetParameterization(tvec->data(), homogeneous_parameterization);
| ^~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::BundleAdjuster::AddImageToProblem(colmap::image_t, colmap::Reconstruction, ceres::LossFunction)’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:420:22: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type
420 | new ceres::QuaternionParameterization;
| ^~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundleadjustment.cc:421:17: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
421 | problem->SetParameterization(qvec_data, quaternion_parameterization);
| ^~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:425:16: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’?
425 | ceres::SubsetParameterization tvec_parameterization =
| ^~~~~~
| LocalParameterization
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:425:40: error: ‘tvec_parameterization’ was not declared in this scope; did you mean ‘quaternion_parameterization’?
425 | ceres::SubsetParameterization tvec_parameterization =
| ^~~~~
| quaternion_parameterization
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:426:17: error: expected type-specifier
426 | new ceres::SubsetParameterization(3, constant_tvec_idxs);
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundleadjustment.cc:427:19: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
427 | problem->SetParameterization(tvec_data, tvec_parameterization);
| ^~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:423:33: warning: unused variable ‘constant_tvec_idxs’ [-Wunused-variable]
423 | const std::vector& constant_tvec_idxs =
| ^~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::BundleAdjuster::ParameterizeCameras(colmap::Reconstruction)’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:514:16: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’?
514 | ceres::SubsetParameterization camera_params_parameterization =
| ^~~~~~
| LocalParameterization
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:514:40: error: ‘camera_params_parameterization’ was not declared in this scope
514 | ceres::SubsetParameterization camera_params_parameterization =
| ^~~~~~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:515:17: error: expected type-specifier
515 | new ceres::SubsetParameterization(
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundleadjustment.cc:517:19: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
517 | problem->SetParameterization(camera.ParamsData(),
| ^~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::RigBundleAdjuster::AddImageToProblem(colmap::image_t, colmap::Reconstruction, std::vector, ceres::LossFunction)’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1061:14: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’?
1061 | ceres::SubsetParameterization tvec_parameterization =
| ^~~~~~
| LocalParameterization
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1061:38: error: ‘tvec_parameterization’ was not declared in this scope
1061 | ceres::SubsetParameterization tvec_parameterization =
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1062:15: error: expected type-specifier
1062 | new ceres::SubsetParameterization(3, constant_tvec_idxs);
| ^~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundleadjustment.cc:1063:17: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
1063 | problem->SetParameterization(tvec_data, tvec_parameterization);
| ^~~~~~~
| SetParameterLowerBound
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1059:31: warning: unused variable ‘constant_tvec_idxs’ [-Wunused-variable]
1059 | const std::vector& constant_tvec_idxs =
| ^~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::RigBundleAdjuster::ParameterizeCameraRigs(colmap::Reconstruction)’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1147:20: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type
1147 | new ceres::QuaternionParameterization;
| ^~~~~~
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundleadjustment.cc:1148:15: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’?
1148 | problem->SetParameterization(qvec_data, quaternion_parameterization);
| ^~~~~~~
| SetParameterLowerBound
make[2]: [src/CMakeFiles/colmap.dir/build.make:661: src/CMakeFiles/colmap.dir/estimators/pose.cc.o] Error 1
make[2]: Waiting for unfinished jobs....
make[2]: [src/CMakeFiles/colmap.dir/build.make:882: src/CMakeFiles/colmap.dir/optim/bundle_adjustment.cc.o] Error 1
make[1]: [CMakeFiles/Makefile2:858: src/CMakeFiles/colmap.dir/all] Error 2
make: *** [Makefile:149: all] Error 2
Why would this problem happen? I used your colmap version(without git clone or checkout): cmake & make. Then it's wring during the process of making
[ 50%] Building CXX object src/CMakeFiles/colmap.dir/mvs/meshing.cc.o [ 50%] Building CXX object src/CMakeFiles/colmap.dir/optim/bundle_adjustment.cc.o [ 50%] Building CXX object src/CMakeFiles/colmap.dir/ui/undistortion_widget.cc.o /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc: In function ‘bool colmap::RefineAbsolutePose(const colmap::AbsolutePoseRefinementOptions&, const std::vector&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, const std::vector<Eigen::Matrix<double, 3, 1> >&, Eigen::Vector4d, Eigen::Vector3d, colmap::Camera)’:
/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:242:20: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type
242 | new ceres::QuaternionParameterization;
| ^& constant_tvec_idxs =
| ^ )’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:514:16: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’?
514 | ceres::SubsetParameterization camera_params_parameterization =
| ^ , ceres::LossFunction)’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1061:14: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’?
1061 | ceres::SubsetParameterization tvec_parameterization =
| ^& constant_tvec_idxs =
| ^ )’:
/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1147:20: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type
1147 | new ceres::QuaternionParameterization;
| ^
~~~~~/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:243:13: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’? 243 | problem.SetParameterization(qvec->data(), quaternion_parameterization); | ^~~~~~~ | SetParameterLowerBound /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:276:16: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’? 276 | ceres::SubsetParameterization camera_params_parameterization = | ^~~~~~ | LocalParameterization /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:276:40: error: ‘camera_params_parameterization’ was not declared in this scope 276 | ceres::SubsetParameterization camera_params_parameterization = | ^~~~~~~~~~ /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:277:17: error: expected type-specifier 277 | new ceres::SubsetParameterization( | ^~~~~ /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:279:17: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’? 279 | problem.SetParameterization(camera->ParamsData(), | ^~~~~~~ | SetParameterLowerBound /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc: In function ‘bool colmap::RefineRelativePose(const ceres::Solver::Options&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, const std::vector<Eigen::Matrix<double, 2, 1>, std::allocator<Eigen::Matrix<double, 2, 1> > >&, Eigen::Vector4d, Eigen::Vector3d)’: /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:333:18: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type 333 | new ceres::QuaternionParameterization; | ^~~~~~/home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:334:11: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’? 334 | problem.SetParameterization(qvec->data(), quaternion_parameterization); | ^~~~~~~ | SetParameterLowerBound /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:336:10: error: ‘HomogeneousVectorParameterization’ is not a member of ‘ceres’ 336 | ceres::HomogeneousVectorParameterization homogeneous_parameterization = | ^~~~~~~~~ /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:336:45: error: ‘homogeneous_parameterization’ was not declared in this scope; did you mean ‘quaternion_parameterization’? 336 | ceres::HomogeneousVectorParameterization homogeneous_parameterization = | ^~~~~~~~ | quaternion_parameterization /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:337:11: error: expected type-specifier 337 | new ceres::HomogeneousVectorParameterization(3); | ^~~~~ /home/lichao/Documents/NerfingMVS/colmap/src/estimators/pose.cc:338:11: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’? 338 | problem.SetParameterization(tvec->data(), homogeneous_parameterization); | ^~~~~~~ | SetParameterLowerBound /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::BundleAdjuster::AddImageToProblem(colmap::image_t, colmap::Reconstruction, ceres::LossFunction)’: /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:420:22: error: ‘QuaternionParameterization’ in namespace ‘ceres’ does not name a type 420 | new ceres::QuaternionParameterization; | ^~~~~~/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundleadjustment.cc:421:17: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’? 421 | problem->SetParameterization(qvec_data, quaternion_parameterization); | ^~~~~~~ | SetParameterLowerBound /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:425:16: error: ‘SubsetParameterization’ is not a member of ‘ceres’; did you mean ‘LocalParameterization’? 425 | ceres::SubsetParameterization tvec_parameterization = | ^~~~~~ | LocalParameterization /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:425:40: error: ‘tvec_parameterization’ was not declared in this scope; did you mean ‘quaternion_parameterization’? 425 | ceres::SubsetParameterization tvec_parameterization = | ^~~~~| quaternion_parameterization /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:426:17: error: expected type-specifier 426 | new ceres::SubsetParameterization(3, constant_tvec_idxs); | ^~~~~ /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundleadjustment.cc:427:19: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’? 427 | problem->SetParameterization(tvec_data, tvec_parameterization); | ^~~~~~~ | SetParameterLowerBound /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:423:33: warning: unused variable ‘constant_tvec_idxs’ [-Wunused-variable] 423 | const std::vector~~~~~ /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::BundleAdjuster::ParameterizeCameras(colmap::Reconstruction~~~~~ | LocalParameterization /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:514:40: error: ‘camera_params_parameterization’ was not declared in this scope 514 | ceres::SubsetParameterization camera_params_parameterization = | ^~~~~~~~~~ /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:515:17: error: expected type-specifier 515 | new ceres::SubsetParameterization( | ^~~~~ /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundleadjustment.cc:517:19: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’? 517 | problem->SetParameterization(camera.ParamsData(), | ^~~~~~~ | SetParameterLowerBound /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::RigBundleAdjuster::AddImageToProblem(colmap::image_t, colmap::Reconstruction, std::vector~~~~~ | LocalParameterization /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1061:38: error: ‘tvec_parameterization’ was not declared in this scope 1061 | ceres::SubsetParameterization tvec_parameterization = | ^~~~~/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1062:15: error: expected type-specifier 1062 | new ceres::SubsetParameterization(3, constant_tvec_idxs); | ^~~~~ /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundleadjustment.cc:1063:17: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’? 1063 | problem->SetParameterization(tvec_data, tvec_parameterization); | ^~~~~~~ | SetParameterLowerBound /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc:1059:31: warning: unused variable ‘constant_tvec_idxs’ [-Wunused-variable] 1059 | const std::vector~~~~~ /home/lichao/Documents/NerfingMVS/colmap/src/optim/bundle_adjustment.cc: In member function ‘void colmap::RigBundleAdjuster::ParameterizeCameraRigs(colmap::Reconstruction~~~~~/home/lichao/Documents/NerfingMVS/colmap/src/optim/bundleadjustment.cc:1148:15: error: ‘class ceres::Problem’ has no member named ‘SetParameterization’; did you mean ‘SetParameterLowerBound’? 1148 | problem->SetParameterization(qvec_data, quaternion_parameterization); | ^~~~~~~ | SetParameterLowerBound make[2]: [src/CMakeFiles/colmap.dir/build.make:661: src/CMakeFiles/colmap.dir/estimators/pose.cc.o] Error 1 make[2]: Waiting for unfinished jobs.... make[2]: [src/CMakeFiles/colmap.dir/build.make:882: src/CMakeFiles/colmap.dir/optim/bundle_adjustment.cc.o] Error 1 make[1]: [CMakeFiles/Makefile2:858: src/CMakeFiles/colmap.dir/all] Error 2 make: *** [Makefile:149: all] Error 2I hope to receive your reply! THX