Linux下使用vscode編譯、調試C/C++

1. 安裝

環境是Ubuntu gnome 16.10。能夠用以下方式安裝:html

  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啓動調試 調試c++

4. 參考

  1. 如何在VSCode內編譯運行C++?
  2. 在Linux中使用VS Code編譯調試C++項目
  3. 官方文檔
相關文章
相關標籤/搜索