Linux下 Vscode launch.json 以及tasks.json配置

本文档详细解读了launch.JSON和task.JSON文件,展示了如何配置C++项目的启动调试与构建任务,包括g++编译选项、调试环境设置和预设任务。

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

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

    {
        "name": "g++ - 生成和调试活动文件",
        //"label":"Compile",
        "type": "cppdbg",
        "request": "launch",
        "program": "${fileDirname}/${fileBasenameNoExtension}",
        "args": [],
        "stopAtEntry": false,
        "cwd": "${fileDirname}",
        "environment": [],
        "externalConsole": false,
        "MIMode": "gdb",
        "setupCommands": [
            {
                "description": "为 gdb 启用整齐打印",
                "text": "-enable-pretty-printing",
                "ignoreFailures": true
            },
            {
                "description": "将反汇编风格设置为 Intel",
                "text": "-gdb-set disassembly-flavor intel",
                "ignoreFailures": true
            }
        ],
        "preLaunchTask": "C/C++: g++ 生成活动文件",
        "miDebuggerPath": "/usr/bin/gdb"
    }
]

}

task.JSON
{
“tasks”: [
{
“type”: “cppbuild”,
“label”: “C/C++: g++ 生成活动文件”,
“command”: “/usr/bin/g++”,
“args”: [
“-std=c++11”,
// “-stdlib=libc++”,
“-fdiagnostics-color=always”,
“-g”,
// “file","{file}", "file","{workspaceFolder}/*.cpp”,
“-o”,
fileDirname/{fileDirname}/fileDirname/{fileBasenameNoExtension}”
],
“options”: {
“cwd”: “KaTeX parse error: Expected 'EOF', got '}' at position 28: …}" }̲, "…gcc”
],
“group”: {
“kind”: “build”,
“isDefault”: true
},
“presentation”: {
“panel”: “new”
},
“detail”: “调试器生成的任务。”
}
],
“version”: “2.0.0”
}

### LinuxVSCode C 语言调试配置教程 在 Linux 环境下,通过 Visual Studio Code (VSCode) 进行 C 语言程序的调试需要正确配置 `launch.json` 和 `tasks.json` 文件。以下是详细的说明: #### 1. 安装必要的工具链 为了能够在 Linux 上进行 C 语言开发和调试,需安装 GCC 编译器以及 GDB 调试器。 ```bash sudo apt update && sudo apt install build-essential gdb ``` 这一步会安装 GCC、G++ 及其他构建工具,并提供 GDB 支持用于调试[^1]。 --- #### 2. 配置 `tasks.json` `tasks.json` 的主要作用是指定编译任务及其参数。以下是一个典型的 `tasks.json` 示例: ```json { "version": "2.0.0", "tasks": [ { "label": "build_c_program", "type": "shell", "command": "/usr/bin/gcc", // 指定编译器路径 "args": [ "-g", // 添加调试信息 "${file}", // 当前打开的源文件 "-o", // 输出可执行文件名称 "${fileDirname}/${fileBasenameNoExtension}" ], "group": { "kind": "build", "isDefault": true }, "problemMatcher": ["$gcc"] } ] } ``` 上述配置中: - `-g` 参数确保生成带有调试信息的二进制文件。 - `${file}` 动态指向当前编辑的 `.c` 文件。 - 输出的目标文件位于同一目录下,命名为与源文件相同的名称但无扩展名。 --- #### 3. 配置 `launch.json` `launch.json` 主要定义了调试器的行为。以下是一个适用于 C 语言项目的典型配置: ```json { "version": "0.2.0", "configurations": [ { "name": "(gdb) Launch", "type": "cppdbg", "request": "launch", "program": "${fileDirname}/${fileBasenameNoExtension}", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": true, // 使用外部终端运行程序 "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "preLaunchTask": "build_c_program" } ] } ``` 此配置的关键点包括: - `"program"` 字段指定了待调试的可执行文件位置,这里动态匹配由 `tasks.json` 构建的结果。 - `"preLaunchTask"` 自动调用名为 `build_c_program` 的任务来完成编译操作。 - `"MIMode": "gdb"` 明确指出使用 GNU Debugger 来处理调试逻辑。 --- #### 4. 测试配置有效性 保存以上两个 JSON 文件后,在 VSCode 中按下快捷键 **F5** 启动调试模式。此时应能顺利进入断点并查看变量状态等信息。 如果遇到错误提示,请确认以下几点: - 是否已成功安装 GCC 和 GDB; - `tasks.json` 中指定的编译器路径是否有效; - `launch.json` 所依赖的任务标签是否存在且命名一致。 --- ### 注意事项 对于更复杂的项目结构(如多文件或多目标),可能还需要调整 `tasks.json` 的输入列表或引入 Makefile 自动生成机制[^2]。另外,当涉及第三方库时,则建议额外修改其对应的 CMakeLists.txt 文件以启用 Debug 模式构建[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值