Linux下使用vscode编译、调试C/C++

1. 安装

环境是Ubuntu gnome 16.10。可以用如下方式安装:

  1. 使用ubuntu-make安装流行IDE。命令为 umake ide visual-studio-code
  2. 微软官网下载deb包,自行安装。

2. 配置

  1. 安装c/c++插件(微软官方插件)以支持cpp语言
    可以直接搜索安装或者去官网插件库安装;也可以Ctrl+P之后输入命令 ext install c++ 安装插件
  2. 系统需要安装编译、调试环境(gcc,g++)。Ubuntu下可直接安装build-essential
  3. 项目配置
    用VSCode打开项目文件夹,打开一个源文件,直接快捷键ctrl + shift + D,点击设置图标,弹出的选择中选C++(GDB/LLDB),会自动创建项目的launch.json文件(官方文档 ),默认是调试配置。不过为什么不是运行配置?
  • 修改其中的program字段值,改为编译生成的可执行文件路径。如 "program": "${workspaceRoot}/${fileBasenameNoExtension}.out"。即,若源文件是case.c,则将调试case.out文件。
  • 但此时F5调试运行会找不到可执行文件,还要做编译配置。给launch.json添加一个任务选项: "preLaunchTask": "build"。保存后切换至源文件,按F5调试,此时弹出一个信息框要求配置任务运行程序,选择后点击Others,跳出tasks.json(官方文档 )配置文件,配置一个名为”build“的任务。
{
    "version": "0.1.0",
    "command": "gcc",  // 编译C程序。可以换成 echo 来调试命令参数
    "isShellCommand": true,
    "tasks": [
        {
            "taskName": "build",  // 任务名
            "suppressTaskName": true,
            "args": ["-g", "-o", "${fileBasenameNoExtension}.out", "${file}"],  // 命令参数
            "problemMatcher": {
                "owner": "cpp",
                "fileLocation":  ["relative", "${workspaceRoot}"],
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            }
        }
    ]
}

3. 编译调试

保存后切换至源代码,再次按F5启动调试 调试

4. 参考

  1. 如何在VSCode内编译运行C++?
  2. 在Linux中使用VS Code编译调试C++项目
  3. 官方文档

猜你喜欢

转载自my.oschina.net/u/1044667/blog/832111