VScode 配置Orbslam debug调试环境(ubuntu18.04)

news/2024/7/16 9:10:10 标签: vscode, ide, 编辑器, orbslam2

        如果没有安装VScode的话,可以去点击官网下载

        如果已经安装了VScode,可以直接把ORBSLAM的工程文件夹拖到VScode中,系统会提示是否添加C/C++编译工具,直接安装即可,安装过程中也可以安装一下cmake

        将ORBSLAM的工程文件夹拖到VScode后,系统会自动生成.vscode的文件夹,里头会有个tasks.json的文件

里头一开始长这样:

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++ 生成活动文件",
            "command": "/usr/bin/g++",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

将其修改为如下: 

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build",
            "type": "shell",
            "command": "./build.sh"
        }
    ]
}

在.vscode中在添加launch.json文件

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "/home/athrunsunny/slam_project/ORB_SLAM2/Examples/Monocular/mono_tum",
            "args": ["/home/athrunsunny/slam_project/ORB_SLAM2/Vocabulary/ORBvoc.txt",
                "/home/athrunsunny/slam_project/ORB_SLAM2/Examples/Monocular/TUM1.yaml",
                "/media/athrunsunny/DATA/slam_data/rgbd_dataset_freiburg1_desk"],
            "stopAtEntry": false,
            "preLaunchTask": "build",//这一步的build与tasks.json中的type名字相同
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}

在build.sh中修改为debug

mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug
make -j4

配置好后点击vscode界面最下方的build,等待编译即可,编译成功就会看到下图

        根据launch中program的设置在vscode最下方选择启动文件,比如我这里是使用单目的mono_tum,根据自己的文件路径配置好参数,可以点击gdb启动试试能不能正常运行。

        之后就可以自行打断点进行调试


http://www.niftyadmin.cn/n/1007621.html

相关文章

yarn与npm的区别(yarn的安装报错问题)

一、yarn 是什么,yarn 与 npm 的区别是什么? yarn 是一个软件包管理系统,Yarn 和 npm 都是包管理工具,用于管理用 JavaScript 编写的软件包,yarn的出现是为了弥补 npm的一些缺陷。yarn 与 npm 的区别 : 性能…

一键解密PDF,让文件安全无忧

忘记PDF密码?在线找回、解密、去除密码,百度搜索“密码帝官网”一步搞定! 如果您经常使用PDF文档,可能会遇到无法编辑、打印或复制的情况。此时,您不必担心!为您提供了一种安全、简单易操作、实惠、不用下载…

前端如何使用WebSocket发送消息

前端如何使用WebSocket发送消息 WebSocket是一种在Web应用程序中实现实时双向通信的协议。相比传统的HTTP协议,WebSocket提供了更高效、更快速的双向通信方式,可以在客户端和服务器之间实时交换数据。本文将详细介绍前端如何使用WebSocket发送消息&…

2.PCB设计规则

2.PCB设计规则 一、抗干扰设计原则 二、PCB布局布线的规则 贴片元件距离边界至少5mm;有极性的元件放置的方向需要一致;MARK点成对出现,一般放置在对角线的最远路径,离边界至少5mm;滤波电容要靠近芯片。如果是VDD引脚…

ubuntu 下 opencv的安装以及配置(亲测有效)

当在Ubuntu上安装OpenCV时,可以按照以下详细步骤进行操作: 更新apt包列表: $ sudo apt update这将更新系统的包列表,确保可以获取到最新的软件包信息。 安装所需依赖项: sudo apt install build-essential cmake g…

ElasticSearch学习01——Windows10环境下ES安装经验与踩到的坑

由于对ES基本概念和历史演进在网上随处可查,所以本文在此不做赘述.随意本文直接讲述如何安装使用ES 1.安装JDK ​ ElasticSearch是基于lucence开发的,也就是运行需要java jdk支持。所以要先安装JAVA环境。由于ElasticSearch 5.x 往后依赖于JDK 1.8的,所…

Appium: Windows系统桌面应用自动化测试(一)

Appium: Windows系统桌面应用自动化测试 一、方案调研二、环境搭建1、WinAppDriver环境搭建(1)开启开发者选项中的“开发人员模式”(2)windows sdk下载安装(3)WinAppDriver下载安装 2、appium环境搭建&…

SpringBoot+微信小程序在线订餐小程序系统 附带详细运行指导视频

文章目录 一、项目演示二、项目介绍三、运行截图四、主要代码 一、项目演示 项目演示地址: 视频地址 二、项目介绍 项目描述:这是一个基于SpringBoot微信小程序框架开发的在线订餐小程序系统。首先,这是一个前后端分离的项目,代…