Linux下vscode编译、配置及调试C++、python工程

主要参考(太有用啦!)及这个(不太有用)

C++

注:为了保证项目可以调试,

step1:

需要在CMakeLists.txt文件中将-g、-O2参数删除,否则会对代码进行优化(比如会导致断点定位不准确),导致调试过程出现bug。

step2:

需要在CMakeLists.txt文件中将cmake_build_type设置为 “Debug”模式。(如果设置为release模式,则生成的可执行文件无法被调试)。

修改后示例

1.先建立build文件夹并cmake  .. 、make成功,确保生成了可执行文件。

2.删除.vscode文件夹(如果有的话)。

3.选择想要进行调试的项目总文件夹(包含build及.cpp、CMakeLists.txt等文件的总文件夹)。

4.按如图1、2、3、4步骤(绿色数字)。

第4步

第4步执行后提示4.1

点击“打开‘launch.json'即可

5.修改launch.json中的对应信息

6.按下键盘的F5键即可进行调试运行。

7.后续进阶(实现自动化调试:修改代码后,会自动编译)见参考视频的7.5节tasks.json部分。

tasks.json内容如下:
{   
    "version": "2.0.0",
    "options": {
        "cwd": "${workspaceFolder}/build"//这里需要修改为工程的build绝对路径(针对存在多个工程的情况)
    },
    "tasks": [
        {
            "type": "shell",
            "label": "cmake",
            "command": "cmake",
            "args": [
                ".."
            ]
        },
        {
            "label": "make",
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "command": "make",
            "args": [

            ]
        },
        {
            "label": "Build",
			"dependsOrder": "sequence", // 按列出的顺序执行任务依赖项
            "dependsOn":[
                "cmake",
                "make"
            ]
        }
    ]

}
tasks.json图片版用于检查:

调试时左侧的调试显示窗口会有相应的变量信息变化,很有用,有助于对程序的理解

vscode跳转到上次位置的快捷键


GGG 搭建简单cmake项目工程示例

1.项目文件架构:

2.libhello.h

#pragma once

void printHello();

3.libhello.cpp

#include <iostream>

using namespace std;

void printHello(){
  cout << "Hello SLAM" << endl;
}

4.CMakeLists.txt


include_directories("/home/gx/shisijiang/chenmingwei/slam/slambook2/G_test/2/include")
add_library(lib ./src/libhello.cpp)
add_executable(uselib uselibhello.cpp)
target_link_libraries(uselib lib)

5.uselibhello.cpp

#include "include/libhello.h"

int main(){
    printHello();
    
    return 0;
}


python

1.删除.vscode文件夹(如果有的话)。

2.打开想要进行调试的python文件。

3.按如图1、2、3步骤(绿色数字)。

4.在python文件中按自己的调试需求打断点,之后按键盘的F5键即可进行调试运行。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值