报错:
../lib/libORB_SLAM2.so:对‘cv::line_descriptor::BinaryDescriptorMatcher::createBinaryDescriptorMatcher()’未定义的引用 ../lib/libORB_SLAM2.so:对‘cv::line_descriptor::BinaryDescriptorMatcher::match(cv::Mat const&, cv::Mat const&, std::vector<cv::DMatch, std::allocator<cv::DMatch> >&, cv::Mat const&) const’未定义的引用 ../lib/libORB_SLAM2.so:对‘cv::line_descriptor::BinaryDescriptor::createBinaryDescriptor()’未定义的引用 collect2: error: ld returned 1 exit status CMakeFiles/mono_euroc.dir/build.make:139: recipe for target '../Examples/Monocular/mono_euroc' failed make[2]: *** [../Examples/Monocular/mono_euroc] Error 1 CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/mono_euroc.dir/all' failed make[1]: *** [CMakeFiles/mono_euroc.dir/all] Error 2 Makefile:83: recipe for target 'all' failed make: *** [all] Error 2
解决:
target_link_libraries(${PROJECT_NAME}
${OpenCV_LIBS} -lopencv_line_descriptor
${EIGEN3_LIBS}
${Pangolin_LIBRARIES}
${PROJECT_SOURCE_DIR}/Thirdparty/DBoW2/lib/libDBoW2.so
${PROJECT_SOURCE_DIR}/Thirdparty/g2o/lib/libg2o.so
)