ORB-SLAM3 build_ros.sh编译历程

遇到的的一个问题是python版本不对

Could NOT find PythonIterp: Found unsuitble version 2.7.18,but required is at list "3"

但是当前使用的python 版本就是3.8,感到很疑惑,后来查到是要修改系统默认的python路径,因为编译时是通过系统路径查找python的,使用以下代码

#删除原来python的链接文件
sudo rm /usr/bin/python
#建立新的python指向,此处示例为:将python3.8建立为新的python链接指向
sudo ln -s /usr/bin/python3.8 /usr/bin/python
#加入环境变量
PATH=/usr/bin:$PATH

之后以为大功告成,结果后来告诉我找不着opencv

CMake Error at CMakeLists.txt:39 (message):
  OpenCV > 2.4.3 not found.

查看cmakelists,我的opencv版本4.2.0,cmakelists里面是3.0,如下代码所示,将3.0改为4.0即可

find_package(OpenCV 3.0 QUIET)
if(NOT OpenCV_FOUND)
   find_package(OpenCV 2.4.3 QUIET)
   if(NOT OpenCV_FOUND)
      message(FATAL_ERROR "OpenCV > 2.4.3 not found.")
   endif()
endif()

之后cmake总算成功了,编译出现老问题,c++版本不对,在cmakelists里头加上如下语句即可,编译成功,开始用单目实时进行slam!!!

set(CMAKE_CXX_STANDARD 11) ###

你可能感兴趣的:(linux,slam)