📖
vscode c++ debug機能を構築 (linux)
本記事は、こんな人に向けて書かれています。
VSCodeでプログラミングを勉強したいけど、デバッグがうまくいかない人
小さいプログラムをすぐに試したい人
※Windowsを使う場合、MinGWを導入する方法は本記事に含まれていません。ご了承ください。
構築環境
OS : Arch Linux
code : VSCode (ossではない)
※gcc、g++とlldbパッケージがインストール済み
導入した拡張機能
clangd
CodeLLDB
構築方法
launch.jsonとtasks.jsonという2つのファイルを.codeフォルダの中に作成し、以下のように内容を変えます。
launch.json
{
"version": "0.2.0",
"configurations": [
{
"type": "lldb",
"request": "launch",
"name": "Debug",
"program": "${fileDirname}/${fileBasenameNoExtension}",
"args": [],
"cwd": "${workspaceFolder}",
"console": "integratedTerminal",
"preLaunchTask": "C/C++: g++ build active file"
}
]
}
tasks.json
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "C/C++: g++ build active file",
"command": "/usr/bin/g++",
"args": ["-g", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}"],
"options": {
"cwd": "/usr/bin"
},
"problemMatcher": ["$gcc"],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "Task generated by Debugger."
}
]
}
使い方
※注意:歯車⚙️は表示されません!
代わりにショートカットキーでビルド、起動、デバッグします。
(ショートカットキー例:window / Linux)
Ctrl+Shift+B:ビルド
F5:デバッグ+起動
Ctrl+F5:デバッグなしで起動
注意
1. 立ち上げるファイルは以下のところで指定します。
launch.json
"program": "${fileDirname}/${fileBasenameNoExtension}"
2. ビルドはCMakeなどを使う場合、現在のtasks.jsonは使えません。
※現在はg++を使ってビルドしています。
現在のtasks.jsonは以下のコマンドを実行します。
g++ -g file -o fileDirname/fileBaseNameNoExtension
※fileは現在閲覧(選択)しているファイルです。
3. Cもそのままビルド/デバッグできます。
参考URL
Discussion