ORB_SLAM Ubuntu melodic 编译的坑

先啰嗦一下,网上很多方法都是自己试了之后才知道网上说的方法都是参考或者叫药引子,只是起到启发作用,最后解决问题还是要靠自己。
解决过的问题,还是要积累一下,不然总感觉在重复做轮子,这辈子不是做轮子就是在赶去做轮子的路上。

一、
回归主题,在编译orb-slam过程出现这个问题,

Error: package 'ORB_SLAM' depends on non-existent package 'opencv2' and rosdep claims that it is not

怎么说?
原因,其实很明确,

opencv 库冲突了

怎么解决?
有说:

sudo apt-get install ros-kinetic-cv-bridge

搞定的

有说重新安装opencv
我试过都不行,我的方法是:

1.打开ORB-SLAM文件夹中的manifest.xml文件
gedit manifest.xml
2.注释掉depend package="opencv2"
  

提醒一个细节,重要的事情说3遍:

删除原来ORB-SLAM路径下的build文件夹下的东西然后重新cmake!!!
删除原来ORB-SLAM路径下的build文件夹下的东西然后重新cmake!!!
删除原来ORB-SLAM路径下的build文件夹下的东西然后重新cmake!!!

二、
出现问题

error: static assertion failed: YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY

你可能感兴趣的:(SLAM,机器学习,orb-slam)