Mac下 vscode c/c++ 自動編譯配置
阿新 • • 發佈:2018-12-31
本人mac版本10.12.5 ,vscode版本為 1.13
步驟很簡單,新增好各種與c++有關的外掛後,reload一次,重啟vscode。
在helloworld.cpp所在資料夾下建立.vscode資料夾,在.vscode中建立2個檔案:tasks.json , launch.json
接著是各個檔案的內容:
tasks.json:(編譯配置,也就是用cpp生成a.out的過程)
{ // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "0.1.0", "command": "g++", //command 和 args 組合為編譯c++命令,即 g++ -g xxx.cpp -o a.out "isShellCommand": true, "args": ["-g","${file}","-o","a.out"], //${file}代表著任意檔名,代替了helloworld.cpp "showOutput": "always", "problemMatcher": { //正則匹配,刪除無用符號 "owner": "cpp", "fileLocation": ["relative", "${workspaceRoot}"], "pattern": { "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$", "file": 1, "line": 2, "column": 3, "severity": 4, "message": 5 } } }
launch.json:(除錯配置,也就是執行a.out的過程)
{ "version": "0.2.0", "configurations": [ { "name": "(lldb) Launch", "type": "cppdbg", "request": "launch", "program": "${workspaceRoot}/a.out", //除錯,也就是執行a.out檔案 "args": [], "stopAtEntry": false, "cwd": "${workspaceRoot}", "environment": [], "externalConsole": true, "MIMode": "lldb", "preLaunchTask": "g++" //代表執行launch.json前先執行tasks.json中的g++指令 } ] }
配置完之後,按f5就能對任意在工作目錄下的cpp檔案進行一鍵編譯執行除錯了