在使用g2o过程中有个问题,就是会遇到:
undefined reference to `g2o::VertexSE3Expmap::VertexSE3Expmap()’
undefined reference to `g2o::VertexSBAPointXYZ::VertexSBAPointXYZ()’
undefined reference to `g2o::EdgeProjectXYZ2UV::EdgeProjectXYZ2UV()’
undefined reference to `typeinfo for g2o::VertexSBAPointXYZ’
undefined reference to `typeinfo for g2o::VertexSE3Expmap’
undefined reference to `typeinfo for g2o::VertexSE3Expmap’
我已经在cmakelist里设置
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake_modules)
而且,可以使用自己设计的顶点vertex和边edge。这个原因在哪呢,还是cmakelist的原因
在cmakelist最后增加 加粗部分。
target_link_libraries(BA “/usr/local/lib/libg2o_core.so”
“/usr/local/lib/libg2o_stuff.so”
g2o_types_sba
${Sophus_LIBRARIES})