Ubuntu18.04配置ORB-SLAM2踩坑记录

本文讲述了作者在尝试配置ORB-SLAM2时遇到的问题,包括依赖版本管理、编译时的`-lEigen3::Eigen`错误,以及解决方法,即修改CMakeLists.txt并清理build文件夹。最后成功运行ORB-SLAM2并与ROS集成。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在尝试配置ORB-SLAM3被劝退了之后尝试了一下ORB-SLAM2遇到的问题少了很多,只出了个别错误。本文站在前人的博文上进行的实践,记录自己尝试配置的过程。

参考博客

ORB-SLAM2详细安装教程(ubuntu18.04)_ubuntu安装orbslam2_牙牙要健康的博客-优快云博客

1、ubuntu18.04中其他依赖项的版本

由于之前装的ORB-SLAM3的时候换了很多Eigen和OpenCV的版本导致我自己都忘了装的什么版本了,如果各位也遇到同样的问题可参考以下方法

本人的版本:

opencv 3.4.2

Eigen 3.2.1

Pangolin 0.6

(1)查看opencv的版本
pkg-config --modversion opencv
(2)查看Eigen的版本
sudo gedit /usr/include/eigen3/Eigen/src/Core/util/Macros.h

在14、15、16行处显示着eigen的版本

 2、/usr/bin/ld:找不到-lEigen3::Eigen

在编译的时候报错

[ 62%] Linking CXX shared library ../lib/libORB_SLAM2.so
/usr/bin/ld: 找不到 -lEigen3::Eigen
collect2: error: ld returned 1 exit status
CMakeFiles/ORB_SLAM2.dir/build.make:624: recipe for target '../lib/libORB_SLAM2.so' failed
make[2]: *** [../lib/libORB_SLAM2.so] Error 1
CMakeFiles/Makefile2:252: recipe for target 'CMakeFiles/ORB_SLAM2.dir/all' failed
make[1]: *** [CMakeFiles/ORB_SLAM2.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
解决方案

ORB_SLAM2编译及试运行(含ROS)_cmakefiles/makefile2:252: recipe for target 'cmake_Mr.Hazyzhao的博客-优快云博客

根据git上的回答

issue2

把ORB-SLAM2文件夹中的Cmakelists.txt中的REQUIRED改为REQUIRED NO_MODULE, NO_MODULE可以用来明确地跳过模块模式。它也隐含指定了不使用在精简格式中使用的那些选项。

改完之后重新编译,删除ORB-SLAM2中的build文件夹以及Thirdparty/DBoW2/build和Thirdparty/g2o/build,然后重新编译!

然后跟着流程下来就行了

运行结果

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值