ubuntu18.04编译稠密点云orbslam2问题汇总,D435i,一种可能的段错误(核心已转储)解决方案,总结:一定要选择合适的库!

目录

关于卸载自己版本的库:

关于VTK:

情况一:找不到FindVTK.cmake文件

情况二:找不到一些.so库

关于PCL:

特别值得提一点:段错误(核心已转储)

方法一:删除原有系统的eigen库,安装合适版本,推荐3.1版本

方法二:在CMakeLists里面取消编译器的一些设置,具体看链接,这里不再赘述

仍无法解决:可能是高版本的pcl库没有删干净

 关于opencv和ros:

总结:遇到其他的问题,大都能从csdn上找到答案,如果实在找不到,很有可能是版本的问题!版本不适配会遇到各种问题!


我主要follow的文章如下:

Orbslam2 稠密点云 +D435i实现(Ubuntu18.04)_d435运行orbslam2-优快云博客

这篇文章只是讲了个大概,中途会遇到很多问题,我不停地解决问题,目前已经能跑通。

总结下来,最大的问题就是各个库的版本一定要适配

先查看一下自己的关键库:opencv,eigen3,vtk和pcl的版本

pkg-config --modversion eigen3 #查看eigen3版本
pkg-config --modversion opencv #查看opencv版本
sudo find | grep "VTK"  #查看vtk版本
dpkg -l libpcl-*  #查看pcl版本

 经过我不断的试错,合适的版本为

opencv:3.2.0

eigen3:  3.1.0

vtk:  7.1.1

pcl:  1.8.1

pangolin: 0.5

如果按照这样子装,可以一路顺风,这里特别特别要注意的点就是,不要用git clone或者sudo apt-get来安装库,这样会直接帮你安装最新版本,而最新版本之间不适配,会带来很多错误!!!!!一定要去下载源码,然后老套路,mkdir build一直到sudo  make  install(大家一定知道我在讲什么)

以本人为例,刚开始通过git clone或sudo apt-get装的库:

eigen3版本好像为3.3.4,pcl版本为1.13.1.99,vtk 是sudo apt-get下载的,出现了很多错误。

关于卸载自己版本的库:

一定要去仔细搜终端代码,不然可能删不干净,会很麻烦,有一些库可以在build文件夹里面通过以下代码删除:

sudo make uninstall

关于VTK:

首先很重要的一点:安装pcl之前一定要先安装vtk,ubuntu18.04可能会自带vtk,但是这个vtk里面其实是不全的,运行orbslam2的时候会报错!

这里尤其要说明一点,我刚开始vtk和pcl安装是按照这篇文章安装的:(最新)Ubuntu18.04安装pcl点云库(遇坑大全,解决方法)_ubuntu已经安装no module named 'pcl-优快云博客

这个博主讲的很好,但是vtk的安装,他是让我们用sudo apt-get的方式安装的,虽然最后也能将pcl安装好,但是在cmake..  orbslam2的时候,可能会报如下的错误:

情况一:找不到FindVTK.cmake文件

CMake Warning at /usr/share/pcl-1.13/PCLConfig.cmake:268 (find_package):
  By not providing "FindVTK.cmake" in CMAKE_MODULE_PATH this project h

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值