ubuntu使用Kdevelop对ORB

您所在的位置:网站首页 kdevelop怎么编译和运行程序 ubuntu使用Kdevelop对ORB

ubuntu使用Kdevelop对ORB

2024-07-11 03:26| 来源: 网络整理| 查看: 265

文章目录 1 下载ORBSLAM22 KDevelop4下打开ORBSLAM2工程3 编译4 运行mono_tum例程5 对mono_tum进行单步调试6 坑坑1:KDevelop调试会出现一些问题6 坑坑2:KDevelop 设置断点不显示6 坑坑3:编译报错‘usleep’ was not declared in this scope

如何利用KDevelop这款IDE实现对ORBSLAM2源码中mono_tum程序的编译以及简单的单步调试学习。 电脑:ubuntu18.04 KDevelop版本:KDevelop 5.2.1 前置任务1:已安装好KDevelop4 前置任务2:已安装好ORB SLAM2的所有依赖项

1 下载ORBSLAM2

满足前置任务2,在终端输入如下指令

git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2

此时ORBSLAM2下载到了根目录下

2 KDevelop4下打开ORBSLAM2工程

打开KDevelop4,然后点击“session”、“start new session”; 点击“Project->Open/Import Project”, 选择下载好的ORBSLAM2文件夹,点击右上角"opent"

3 编译

右键点击”构建“,即可进行编译

工程系统结构图如下 其中mono_tum为编译后的二进制文件。

4 运行mono_tum例程 鼠标右键点击编译后的可执行二进制文件,选择" Execute As",“Complied Binary”.此时,会提示我们"Usage: ./mono_tum path_to_vocabulary path_to_settings path_to_sequence",这时需要对工程进行配置。选择"Run",“Configure Launches”,依次填入所需参数. 这里采用的是TUM官网上下载的rgbd_dataset_freiburg1_desk数据集,参数设置好之后,点击"ok"。 再右键点击可执行文件,选择" Execute As",“Complied Binary”,即可运行。

在这里插入图片描述

5 对mono_tum进行单步调试 打开ORBSLAM2中的CMakeLists.txt文件,加入set(CMAKE_BUILD_TYPE “Debug”),然后重新对mono_tum程序进行"Build"。构建结束之后,鼠标双击行号左边设置断点开始对momo_tum程序进行单步调试,步骤为:右键点击mono_tum,选择"Debug As"、“Complied Binary”(或者直接点击Debug按钮)。"Step in"进入函数,"Step out"退出函数, "Step over"跨过函数单部执行 6 坑坑1:KDevelop调试会出现一些问题

按照以下步骤进行检查:

检查CMakeLists.txt文件是否添加以下语句:

// 转Debug模式

set( CMAKE_BUILD_TYPE "Debug" ) 重新编译:点击build即可;重新加载启动项:

依次点击:run> Configure Launches> remove之前加载的> Add >

Executable行处选择上一步骤build产生的build文件夹里的 shared library文件 >点击OK

6 坑坑2:KDevelop 设置断点不显示

设置> 配置KDevelop> 外观> 边框> 把能打钩的地方都打上钩> 点击OK>

在你的意愿行处右击> 选择ToggleBreakppoint >点击build >点击Debug

若程序没有在断点处停下?:点击界面最下方Breakpoint按钮> 删除非你设置的断点> 再次点击Debug即可

6 坑坑3:编译报错‘usleep’ was not declared in this scope

根据路径catkin_orb-slam2/src/ORB_SLAM2/src找到相应的源文件:*.cc,然后在头文件里面添加一句 #include 以此类推。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3