HKUST-Aerial-Robotics / VINS-Mono

A Robust and Versatile Monocular Visual-Inertial State Estimator
GNU General Public License v3.0
4.9k stars 2.08k forks source link

Catkin_make failed #164

Open phenix1983 opened 6 years ago

phenix1983 commented 6 years ago

[ 1%] Building CXX object VINS-Mono/benchmark_publisher/CMakeFiles/benchmark_publisher.dir/src/benchmark_publisher_node.cpp.o [ 3%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/chessboard/Chessboard.cc.o [ 4%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o [ 6%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/estimator_node.cpp.o [ 7%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/calib/CameraCalibration.cc.o [ 9%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/chessboard/Chessboard.cc.o [ 10%] Linking CXX executable /home/yfz/catkin_ws/devel/lib/benchmark_publisher/benchmark_publisher [ 10%] Built target benchmark_publisher [ 12%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/calib/CameraCalibration.cc.o [ 13%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/camera_models/Camera.cc.o [ 15%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/camera_models/Camera.cc.o [ 16%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/camera_models/CameraFactory.cc.o [ 18%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/camera_models/CameraFactory.cc.o [ 20%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/camera_models/CostFunctionFactory.cc.o [ 21%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/camera_models/PinholeCamera.cc.o [ 23%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/camera_models/CostFunctionFactory.cc.o [ 24%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/camera_models/CataCamera.cc.o [ 26%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/camera_models/EquidistantCamera.cc.o [ 27%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/parameters.cpp.o [ 29%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/camera_models/ScaramuzzaCamera.cc.o [ 30%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/estimator.cpp.o [ 32%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/sparse_graph/Transform.cc.o [ 33%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/gpl/gpl.cc.o [ 35%] Building CXX object VINS-Mono/camera_model/CMakeFiles/Calibration.dir/src/gpl/EigenQuaternionParameterization.cc.o [ 36%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/camera_models/PinholeCamera.cc.o [ 38%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/camera_models/CataCamera.cc.o [ 40%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/camera_models/EquidistantCamera.cc.o [ 44%] Linking CXX executable /home/yfz/catkin_ws/devel/lib/camera_model/Calibration [ 44%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/feature_manager.cpp.o [ 44%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/camera_models/ScaramuzzaCamera.cc.o [ 46%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/sparse_graph/Transform.cc.o [ 47%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/factor/pose_local_parameterization.cpp.o [ 49%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/factor/projection_factor.cpp.o [ 50%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/gpl/gpl.cc.o [ 52%] Building CXX object VINS-Mono/camera_model/CMakeFiles/camera_model.dir/src/gpl/EigenQuaternionParameterization.cc.o [ 53%] Linking CXX shared library /home/yfz/catkin_ws/devel/lib/libcamera_model.so CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:在函数‘boost::program_options::typed_value<std::cxx11::basic_string<char, std::char_traits, std::allocator >, char>::xparse(boost::any&, std::vector<std::cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::cxx11::basic_string<char, std::char_traits, std::allocator > > > const&) const’中: intrinsic_calib.cc:(.text._ZNK5boost15program_options11typed_valueINSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcE6xparseERNS_3anyERKSt6vectorIS7_SaIS7_EE[_ZNK5boost15program_options11typed_valueINSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcE6xparseERNS_3anyERKSt6vectorIS7_SaIS7_EE]+0x17):对‘boost::program_options::validate(boost::any&, std::vector<std::cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator >, int)’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:在函数‘boost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, int)’中: intrinsic_calib.cc:(.text._ZN5boost15program_options16validation_errorC2ENS1_6kind_tERKNSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEESA_i[_ZN5boost15program_options16validation_errorC5ENS1_6kind_tERKNSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEESA_i]+0x36):对‘boost::program_options::validation_error::get_templateabi:cxx11’未定义的引用 intrinsic_calib.cc:(.text._ZN5boost15program_options16validation_errorC2ENS1_6kind_tERKNSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEESA_i[_ZN5boost15program_options16validation_errorC5ENS1_6kind_tERKNSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEESA_i]+0x4c):对‘boost::program_options::error_with_option_name::error_with_option_name(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, int)’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:在函数‘boost::program_options::basic_command_line_parser::basic_command_line_parser(int, char const const)’中: intrinsic_calib.cc:(.text._ZN5boost15program_options25basic_command_line_parserIcEC2EiPKPKc[_ZN5boost15program_options25basic_command_line_parserIcEC5EiPKPKc]+0x2cc):对‘boost::program_options::to_internal(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)’未定义的引用 intrinsic_calib.cc:(.text._ZN5boost15program_options25basic_command_line_parserIcEC2EiPKPKc[_ZN5boost15program_options25basic_command_line_parserIcEC5EiPKPKc]+0x340):对‘boost::program_options::detail::cmdline::cmdline(std::vector<std::cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::cxx11::basic_string<char, std::char_traits, std::allocator > > > const&)’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:在函数‘boost::program_options::typed_value<std::cxx11::basic_string<char, std::char_traits, std::allocator >, char>::name() const’中: intrinsic_calib.cc:(.text._ZNK5boost15program_options11typed_valueINSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcE4nameEv[_ZNK5boost15program_options11typed_valueINSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcE4nameEv]+0x38):对‘boost::program_options::arg[abi:cxx11]’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:在函数‘boost::program_options::typed_value<float, char>::name() const’中: intrinsic_calib.cc:(.text._ZNK5boost15program_options11typed_valueIfcE4nameEv[_ZNK5boost15program_options11typed_valueIfcE4nameEv]+0x38):对‘boost::program_options::arg[abi:cxx11]’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:在函数‘boost::program_options::typed_value<int, char>::name() const’中: intrinsic_calib.cc:(.text._ZNK5boost15program_options11typed_valueIicE4nameEv[_ZNK5boost15program_options11typed_valueIicE4nameEv]+0x38):对‘boost::program_options::arg[abi:cxx11]’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:在函数‘main’中: intrinsic_calib.cc:(.text.startup+0x15e):对‘boost::program_options::options_description::options_description(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, unsigned int, unsigned int)’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:在函数‘void boost::program_options::validate<float, char>(boost::any&, std::vector<std::cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, float, long)’中: intrinsic_calib.cc:(.text._ZN5boost15program_options8validateIfcEEvRNS_3anyERKSt6vectorINSt7cxx1112basic_stringIT0_St11char_traitsIS7_ESaIS7_EEESaISB_EEPT_l[_ZN5boost15program_options8validateIfcEEvRNS_3anyERKSt6vectorINSt7cxx1112basic_stringIT0_St11char_traitsIS7_ESaIS7_EEESaISB_EEPT_l]+0x588):对‘boost::program_options::invalid_option_value::invalid_option_value(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:在函数‘void boost::program_options::validate<int, char>(boost::any&, std::vector<std::cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, int*, long)’中: intrinsic_calib.cc:(.text._ZN5boost15program_options8validateIicEEvRNS_3anyERKSt6vectorINSt7cxx1112basic_stringIT0_St11char_traitsIS7_ESaIS7_EEESaISB_EEPT_l[_ZN5boost15program_options8validateIicEEvRNS_3anyERKSt6vectorINSt7cxx1112basic_stringIT0_St11char_traitsIS7_ESaIS7_EEESaISB_EEPT_l]+0x599):对‘boost::program_options::invalid_option_value::invalid_option_value(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:(.data.rel.ro._ZTVN5boost16exception_detail19error_info_injectorINS_15program_options20invalid_option_valueEEE[_ZTVN5boost16exception_detail19error_info_injectorINS_15program_options20invalid_option_valueEEE]+0x30):对‘boost::program_options::error_with_option_name::substitute_placeholders(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&) const’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:(.data.rel.ro._ZTVN5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15program_options20invalid_option_valueEEEEE[_ZTVN5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15program_options20invalid_option_valueEEEEE]+0x38):对‘boost::program_options::error_with_option_name::substitute_placeholders(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&) const’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:(.data.rel.ro._ZTVN5boost16exception_detail19error_info_injectorINS_15program_options16validation_errorEEE[_ZTVN5boost16exception_detail19error_info_injectorINS_15program_options16validation_errorEEE]+0x30):对‘boost::program_options::error_with_option_name::substitute_placeholders(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&) const’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:(.data.rel.ro._ZTVN5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15program_options16validation_errorEEEEE[_ZTVN5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15program_options16validation_errorEEEEE]+0x38):对‘boost::program_options::error_with_option_name::substitute_placeholders(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&) const’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:(.data.rel.ro._ZTVN5boost15program_options16validation_errorE[_ZTVN5boost15program_options16validation_errorE]+0x30):对‘boost::program_options::error_with_option_name::substitute_placeholders(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&) const’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:(.data.rel.ro._ZTVN5boost15program_options20invalid_option_valueE[_ZTVN5boost15program_options20invalid_option_valueE]+0x30): 跟着更多未定义的参考到 boost::program_options::error_with_option_name::substitute_placeholders(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&) const CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:(.data.rel.ro._ZTVN5boost15program_options11typed_valueIicEE[_ZTVN5boost15program_options11typed_valueIicEE]+0x38):对‘boost::program_options::value_semantic_codecvt_helper::parse(boost::any&, std::vector<std::cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, bool) const’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:(.data.rel.ro._ZTVN5boost15program_options11typed_valueIfcEE[_ZTVN5boost15program_options11typed_valueIfcEE]+0x38):对‘boost::program_options::value_semantic_codecvt_helper::parse(boost::any&, std::vector<std::cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, bool) const’未定义的引用 CMakeFiles/Calibration.dir/src/intrinsic_calib.cc.o:(.data.rel.ro._ZTVN5boost15program_options11typed_valueINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcEE[_ZTVN5boost15program_options11typed_valueINSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcEE]+0x38):对‘boost::program_options::value_semantic_codecvt_helper::parse(boost::any&, std::vector<std::cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > const&, bool) const’未定义的引用 collect2: error: ld returned 1 exit status VINS-Mono/camera_model/CMakeFiles/Calibration.dir/build.make:479: recipe for target '/home/yfz/catkin_ws/devel/lib/camera_model/Calibration' failed make[2]: [/home/yfz/catkin_ws/devel/lib/camera_model/Calibration] Error 1 CMakeFiles/Makefile2:1907: recipe for target 'VINS-Mono/camera_model/CMakeFiles/Calibration.dir/all' failed make[1]: [VINS-Mono/camera_model/CMakeFiles/Calibration.dir/all] Error 2 make[1]: 正在等待未完成的任务.... [ 55%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/factor/projection_td_factor.cpp.o /usr/bin/ld: /usr/local/lib/libgflags.a(gflags.cc.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC /usr/local/lib/libgflags.a: 无法添加符号: 错误的值 collect2: error: ld returned 1 exit status VINS-Mono/camera_model/CMakeFiles/camera_model.dir/build.make:453: recipe for target '/home/yfz/catkin_ws/devel/lib/libcamera_model.so' failed make[2]: [/home/yfz/catkin_ws/devel/lib/libcamera_model.so] Error 1 CMakeFiles/Makefile2:1870: recipe for target 'VINS-Mono/camera_model/CMakeFiles/camera_model.dir/all' failed make[1]: [VINS-Mono/camera_model/CMakeFiles/camera_model.dir/all] Error 2 [ 56%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/utility/visualization.cpp.o [ 58%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/utility/CameraPoseVisualization.cpp.o [ 60%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/utility/utility.cpp.o [ 61%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/factor/marginalization_factor.cpp.o [ 63%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/initial/solve_5pts.cpp.o [ 64%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/initial/initial_sfm.cpp.o [ 66%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/initial/initial_aligment.cpp.o [ 67%] Building CXX object VINS-Mono/vins_estimator/CMakeFiles/vins_estimator.dir/src/initial/initial_ex_rotation.cpp.o [ 69%] Linking CXX executable /home/yfz/catkin_ws/devel/lib/vins_estimator/vins_estimator [ 69%] Built target vins_estimator Makefile:138: recipe for target 'all' failed make: [all] Error 2 Invoking "make -j4 -l4" failed

MerlotQ commented 6 years ago

you may have to change the version of gcc like using gcc 5.4 etc

phenix1983 commented 6 years ago

Thank you for your reply. I tried to resolve the problem be reinstall gcc5.4.1, installation is successful, But the problem still exist. So, I use a new ubuntu16.04 computer, The error information dispeared. The issue can be closed. The same as ISSUE99. Thank you. :)

ghost commented 4 years ago

Facing the same error. I tried to do catkin_make using gcc5.4.1 but no success. For "boost::program_options" undefined reference i added a ${Boost_PROGRAM_OPTIONS_LIBRARY} to :

target_link_libraries(Calibration ${Boost_LIBRARIES} ${OpenCV_LIBS} ${CERES_LIBRARIES})

Then I followed catkin_make individual package following the order mentioned in https://github.com/HKUST-Aerial-Robotics/VINS-Mono/issues/9#issuecomment-305177916 and it works.

Boost version : 1.70.0
gcc version: 9.1.0