Sophus 编译错误

CmakeLists.txt调用Sophus的语法如下:

FIND_PACKAGE(sophus REQUIRED)
 TARGET_LINK_LIBRARIES(${PROJECT_NAME}
     ${Sophus_LIBRARIES})

 报错:

Sophus 编译错误

解决方法是

 

set(Sophus_LIBRARIES libSophus.so)

原因分析:
安装Sophus时,有个lib文件“libSophus.so”会出现在/usr/local/lib/libSophus.so (本人编译时最后执行了 sudo make install, 因此在系统文件夹里面有该lib文件)。 当执行FIND_PACKAGE(sophus REQUIRED)时,libSophus.so 应该被链接到 Sophus_LIBRARIES, 但cmake却没链接上(原因未知),因此出现这个错误。 

 参考:https://blog.****.net/u010003609/article/details/68961293