vscode配置调试环境-linux系统

news/2024/7/2 23:55:20

1.检查环境

1.1检查gcc,g++

根据自己所需gcc或者g++环境,进行检查:

如果没有gcc或者g++环境,需要下载

which gcc

1.2检查gdb

如果没有该环境,则需要下载

which gdb

2.vsCode创建简单的程序

test.cpp

3.生成文件

3.1生成c_cpp_properties.json

ctrl+ shift + p调出弹窗: 输入c/c++ 选择选择Edit Configurations(UI)进入配置。

step1:改成对应的系统环境 linux系统改为linux环境

step2: 将编译器路径改为 which gcc返回的 /usr/bin/gcc

则会在会在.vscode目录下生成c_cpp_properties.json文件

3.2生成tasks.json文件

1.点击代码页,test.cpp

2.在代码页当前位置按ctrl+ shift + p调出弹窗: 选择Tasks:configure Default Build Task进入配置

再选择 c/c++: gcc.exe build active file 会在.vscode目录下生成tasks.json

3.3生成launch.json文件

点击菜单栏运行(RUN)→添加配置,则会在.vscode目录下生成launch.json

launch.json

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": []
}

此时launch.json文件是不完整的需要下载模板

将此文件内容更改为一下数据

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/dayo1.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "/usr/bin/gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description":  "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "Compile"
        }
    ]
}

miDebuggerPath字段修改为which gdb返回的/usr/bin/gdb路径

注意:

launch.json文件需要到tasks.json查找数据,需要将launch.json文件中preLaunchTask字段和tasks.json文件中label字段值一致,建议都设置C为ompile

4.调试

打断点

点击运行->启动调试

执行下一步


http://lihuaxi.xjx100.cn/news/1469333.html

相关文章

element-ui中二次封装一个带select的form组件

带select的form组件 样式 代码 <template><el-form-item label"是否有" class"append" prop"tag"><el-form-itemprop"isShare"><el-select v-model"query.tag"><el-option v-for"(item, …

麦肯锡的AI员工Lilli,上岗了!

知识革命正在咨询行业发生。8月16日&#xff0c;麦肯锡发布了AI员工Lilli。 “知识是麦肯锡的生命力。” "Knowledge is the lifeforce of McKinsey." # # “通过 Lilli&#xff0c;我们可以利用技术来获取和利用我们的全部知识和资产&#xff0c;从而将生产力提高到…

二、8.系统调用、可变参数和堆内存管理

系统调用&#xff1a;让用户进程申请操作系统的帮助 一个系统功能调用分为两部分&#xff0c; 一部分是暴露给用户进程的接口函数&#xff0c;它属于用户空间&#xff0c;此部分只是用户进程使用系统调用的途径&#xff0c;只负责发需求。另一部分是与之对应的内核具体实现&am…

BBS项目day04 文章详情页、点赞点菜、评论功能(根评论和子评论)、评论分页之刷新评论页面

一、路由 from django.contrib import admin from django.urls import path, re_path from app01 import views from django.views.static import serve from django.conf import settingsurlpatterns [path(admin/, admin.site.urls),# 注册path(register/, views.register)…

使用mysql:5.6和 owncloud 镜像,构建一个个人网盘。

使用mysql:5.6和 owncloud 镜像&#xff0c;构建一个个人网盘。 1.关闭防火墙 2.在docker中拉去镜像&#xff0c;运行mysql容器 最后一行是容器的默认id 用docker创建一个新的数据库mysqldb设置密码123456 3.拉去网盘owncloud镜像 4.使用软连接连接mysql 5.测试

【TypeScript】枚举类型

在 TypeScript 中&#xff0c;枚举&#xff08;Enum&#xff09;是一种用于定义命名常量集合的数据类型。枚举使代码更加可读和可维护&#xff0c;因为它们为一组具有语义的值提供了命名。 以下是 TypeScript 中枚举的基本用法和特点&#xff1a; // 声明一个枚举 enum Direc…

龙讯旷腾PWmat已部署至曙光智算平台

编者荐语&#xff1a; 近期&#xff0c;龙讯旷腾核心产品PWmat已成功部署至曙光智算AC.sugon.com平台&#xff0c;可为用户提供包括分子建模、第一性原理计算、数据可视化等在内的完备的超级计算云服务&#xff0c;让大家能够轻松上手具有完全自主知识产权的大尺度高性能材料计…

springboot后端返回图片,vue前端接收并显示的解决方案

后端图片数据返回 后端通过二进制流的形式&#xff0c;写入response中 controller层 /*** 获取签到二维码*/GetMapping("/sign-up-pict")public void signUpPict(Long id, Long semId, HttpServletResponse response) throws NoSuchAlgorithmException {signUpServ…