使用qmake编译orb_slam

本文介绍如何在Qt Creator中配置pro文件以引入外部库依赖,包括Eigen、OpenCV等,并解决C++11版本问题。同时,提供了解决运行时加载共享库libORB_SLAM2-master.so错误的方法。

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

一.在qtCreator创建的pro文件中配置依赖
INCLUDEPATH +=/usr/include/eigen3\
/usr/local/include\
/usr/local/include/opencv\
/usr/local/include/opencv2\
/usr/include\
/usr/local/include/pangolin\
ORB_SLAM2-master/include\

LIBS += /usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_core.so \
/usr/local/lib/libopencv_imgproc.so\
/usr/local/lib/libpangolin.so\

LIBS += /home/wzy/Qt_Project/slam_ar/ORB_SLAM2-master/lib/libORB_SLAM2-master.so\
/home/wzy/Qt_Project/slam_ar/ORB_SLAM2-master/Thirdparty/DBoW2/lib/libDBoW2.so\
/home/wzy/Qt_Project/slam_ar/ORB_SLAM2-master/Thirdparty/g2o/lib/libg2o.so\

二.遇到c++版本报错的问题,在pro文件中加上:
CONFIG   += c++11 (Qt5)

三.编译通过后运行,提示 error while loading shared libraries: libORB_SLAM2-master.so
进行如下操作:

  进入到 etc 下

  cd /etc/

  编辑 ld.so.conf 

   sudo vim ld.so.conf    //也可以使用sudo gedit ld.so.conf

  加入 libORB_SLAM2-master.so的路径 /home/wzy/Qt_Project/slam_ar/ORB_SLAM2-master/lib

  //为了省事,我这里把libg2o.so和libDBoW2.so的路径都加进去了

   保存之后 再执行如下命令

   sudo ldconfig

  到此,这个问题解决了。

参考博客:http://blog.youkuaiyun.com/guoyilongedu/article/details/17450815
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值