Ubuntu 18.04配置ORB-SLAM2-with-pointcloud
其实昨天基本在工控机上已经配置好,相当于配置了两遍,实在是有点蠢,上午准备用远程桌面演示的,但是远程桌面一打开Rviz就会报错,无奈只能用笔记本演示感知,和去年一样
基本和研一下学期/April/基于ORB-SLAM2实时构建稠密点云
差不多,但本人实在太菜,又搞了一下午
下面这些第三方库都是需要装的,版本
要注意
Eigen是3.1.4,Pangolin是高翔SlamBook中的版本,g2o_with_orbslam2是包中自带的,octomap是早期自行下载的版本,opencv版本没有特别要求,更改CMakeLists.txt中版本号即可
安装时注意各个包的依赖项,最好看下博客或者官网,不要上来直接make,瞎折腾
一些可能会用到的安装以及卸载博客,以及过程中遇到的问题和解决方案
sudo updatedb
locate g2o
sudo rm -r /usr/local/include/g2o
sudo rm -r /usr/local/lib/libg2o*
sudo rm -r /usr/local/bin/g2o*
最后一个也是最大的问题,折磨了我好久,还是我自己太粗心,没有仔细看报错内容,只是一味地去试g2o的版本
./build.sh没问题,./build_ros.sh就报错,忘记截屏,大概是libORBSLAM.so对g2o::block_solver列文伯格-马奎尔特未定义的引用,我又去看之前的备份,./build.sh和./build_ros.sh的两份CMakeLists.txt中如下
之前能行现在应该也能行啊,这个报错确实跟g2o的版本有关,因为是构造的问题
locate g2o发现ros melodic本身也有g2o的库和头文件,这才产生怀疑,仔细看了下报错,果然是用了ros自带的g2o
把ros自带的g2o移到3rd_party目录可以顺利./build_ros.sh,后面的问题都是小问题了