天天看點

Mac VSCode C++配置

Mac VSCode C++配置

    • 預先安裝
    • 建立項目
    • 配置C++相關設定檔案
      • tasks.json檔案
      • launch.json檔案
      • 開始debug

VSCode在Mac上使用C++相信很多人都覺得配置比較難,配置教程也各式各樣。經過多次嘗試,并參考了官方教程,這裡記錄了一個我自己配置成功的方法,非常簡單。

預先安裝

  1. 安裝Visual Studio Code on macOS
  2. 安裝C++ extension for VS Code,在擴充插件中搜尋

    C++

    Mac VSCode C++配置
  3. 确認已安裝

    Clang

    ,

    Clang

    可能在你的電腦裡安裝過了,打開終端,輸入以下指令來确認是否安裝。
    clang --version
               
    • Clang

      未安裝,使用

      xcode-select --install

      進行安裝。

建立項目

  1. 建立一個Hellow World項目進行測試
    mkdir projects
    cd projects
    mkdir helloworld
    cd helloworld
    code .
               
    上述步驟,建立了一個helloworld項目,并在VSCode中打開。
  2. 建立一個cpp檔案
    Mac VSCode C++配置
    建立一個檔案取名為

    helloworld.cpp

    ,将以下代碼粘貼進檔案中,并按

    Ctrl+S

    進行儲存。
    #include <iostream>
    using namespace std;
    
    int main()
    {
    	for(int i=0; i<=5; i++)
    	   cout << "Hello World " << i << endl;
       return 0;
    }
               

配置C++相關設定檔案

我們需要生成三個檔案tasks.json (compiler build settings),launch.json (debugger settings),c_cpp_properties.json (compiler path and IntelliSense settings)。

tasks.json檔案

tasks.json

用來告訴VSCode如何編譯該程式,這裡會調用

Clang C++

進行編譯。

這裡需要将

helloworld.cpp

檔案在編輯界面中打開,然後選擇

Terminal > Configure Default Build Task

,選擇下面選項。

Mac VSCode C++配置

現在在

.vscode

檔案夾中,就生成了

tasks.json

檔案。将下面的代碼替換掉原來的内容。

{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "2.0.0",
  "tasks": [
    {
      "type": "shell",
      "label": "clang++ build active file",
      "command": "/usr/bin/clang++",
      "args": [
        "-std=c++17",
        "-stdlib=libc++",
        "-g",
        "${file}",
        "-o",
        "${fileDirname}/${fileBasenameNoExtension}"
      ],
      "options": {
        "cwd": "${workspaceFolder}"
      },
      "problemMatcher": ["$gcc"],
      "group": {
        "kind": "build",
        "isDefault": true
      }
    }
  ]
}
           

接下來,回到

helloworld.cpp

檔案,按

Ctrl+Shift+B

進行編譯或選擇

Terminal > Run Build Task

如果編譯成功,會在終端中顯示,并且可以在目錄中看到有一個

helloworld.dSYM

檔案夾(這是用于debug的,先不管它)

Mac VSCode C++配置

launch.json檔案

該檔案用于配置VSCode啟動LLDB debug

選擇

Run > Add Configuration

,并選擇

C++ (GDB/LLDB)

,再選擇

clang++ build and debug active file

Mac VSCode C++配置

現在在

.vscode

檔案夾中,就生成了

launch.json

檔案。其内容如下:

{
  // Use IntelliSense to learn about possible attributes.
  // Hover to view descriptions of existing attributes.
  // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
  "version": "0.2.0",
  "configurations": [
    {
      "name": "clang++ - Build and debug active file",
      "type": "cppdbg",
      "request": "launch",
      "program": "${fileDirname}/${fileBasenameNoExtension}",
      "args": [],
      "stopAtEntry": true,
      "cwd": "${workspaceFolder}",
      "environment": [],
      "externalConsole": false,
      "MIMode": "lldb",
      "preLaunchTask": "clang++ build active file"
    }
  ]
}
           
  • 參數解釋:
    • program

      表示你具體的想debug的程式,其中

      ${fileDirname}

      表示程式所在的檔案夾,

      ${fileBasenameNoExtension}

      表示想要debug的程式。不需要進行修改,對你想要運作的檔案進行debug就能夠自動識别。
    • stopAtEntry

      : 設定為true時,會讓debugger在

      main

      函數處進行一次停頓。
    • preLaunchTask

      的值要和

      task.json

      label

      的值一緻。

開始debug

回到

helloworld.cpp

,這一步非常重要,因為VSCode會檢測你目前哪個視窗處于活躍狀态,并對其進行debug。(活躍:你的界面中顯示的視窗,并且有光标)

  • 使用

    F5

    或從菜單欄中選擇

    Run > Start Debugging

    就能進行開始debug.

參考

Using Clang in Visual Studio Code

繼續閱讀