回答編集履歴
3
Native Debugでの設定方法を追記
answer
CHANGED
@@ -120,4 +120,40 @@
|
|
120
120
|
ブレイクポイントが設置出来たらF5キーでデバッグを開始できます。
|
121
121
|
|
122
122
|
|
123
|
-

|
123
|
+

|
124
|
+
|
125
|
+
---
|
126
|
+
|
127
|
+
Debuggerの代替
|
128
|
+
|
129
|
+
MicrosoftのC/C++パッケージにもデバッガーのサポートはありますが、
|
130
|
+
追加でNative Debug拡張機能をインストールします。
|
131
|
+
設定はこちらのほうが簡単です。
|
132
|
+
|
133
|
+

|
134
|
+
|
135
|
+
launch.jsonの作成する手順の所で`C++ (GDB/LLDB)`の代わりに`GDB`か`LLDB`を選択します。
|
136
|
+
|
137
|
+
launch.jsonを以下のように編集します。
|
138
|
+
|
139
|
+
書き換えるのは`"target": "./bin/executable",`の部分です。
|
140
|
+
|
141
|
+
```json
|
142
|
+
{
|
143
|
+
// IntelliSense を使用して利用可能な属性を学べます。
|
144
|
+
// 既存の属性の説明をホバーして表示します。
|
145
|
+
// 詳細情報は次を確認してください: https://go.microsoft.com/fwlink/?linkid=830387
|
146
|
+
"version": "0.2.0",
|
147
|
+
"configurations": [
|
148
|
+
{
|
149
|
+
"name": "Debug",
|
150
|
+
"type": "lldb-mi", // GDBを使う場合はgdbを指定する
|
151
|
+
"request": "launch",
|
152
|
+
"target": "${workspaceRoot}/main.exe",
|
153
|
+
"cwd": "${workspaceRoot}"
|
154
|
+
}
|
155
|
+
]
|
156
|
+
}
|
157
|
+
```
|
158
|
+
|
159
|
+
あとは、ブレークポイントを設置してF5でデバッグを開始すればOKです。
|
2
Mac環境での注意書きを追記
answer
CHANGED
@@ -4,6 +4,12 @@
|
|
4
4
|
ここではフォルダ名`workspace`、ソースコードは`main.cpp`
|
5
5
|
コンパイルして出来上がる実行ファイル名は`main.exe`とします。
|
6
6
|
|
7
|
+
以下、Windows上でコンパイラにgcc、デバッガにgdbを使用した場合の説明になります。
|
8
|
+
MacでclangとLLDBとか使ってる場合はgccをclangに、gdbをLLDB等に
|
9
|
+
実行ファイルの拡張子をEXEからMacの実行ファイル形式(outかな?よく知らない)に置き換えて下さい。
|
10
|
+
|
11
|
+
WindowsでVisual Stidio Community等のコンパイラを使っている場合は、VSCodeでは無くVisual Studio上でデバッグしませう(VSCodeでも出来るけど…)。
|
12
|
+
|
7
13
|
そしたら、メニューの`タスク` > `既定のビルド タスクの構成`を選択します。
|
8
14
|
`構成するタスクの選択`が出るので`テンプレートから task.json を生成`
|
9
15
|
|
1
task.jsonのコメントを修正
answer
CHANGED
@@ -23,20 +23,20 @@
|
|
23
23
|
"version": "2.0.0",
|
24
24
|
"tasks": [
|
25
25
|
{
|
26
|
-
"label": "Debug Build", // タスクの名前
|
26
|
+
"label": "Debug Build", // タスクの名前(デバッグ用のビルドだとわかれば何でも良いです。)
|
27
|
-
"type": "process", // タスクの種類
|
27
|
+
"type": "process", // タスクの種類(shell⇢processに書き換えて下さい)
|
28
|
-
"command": "gcc", // コンパイラのコマンド名
|
28
|
+
"command": "gcc", // 使用するコンパイラのコマンド名
|
29
|
-
"args": [
|
29
|
+
"args": [ // コンパイラに与える引数のリスト
|
30
30
|
"-g", // デバッグ情報を付与
|
31
31
|
"-O0", // 最適化レベル
|
32
32
|
"main.cpp", // ソースファイル名
|
33
33
|
"-omain.exe" // 実行ファイル名
|
34
34
|
],
|
35
|
-
"group": {
|
35
|
+
"group": { // 複数のタスクがある時にこれがデフォルトのビルドタスクとして選択される
|
36
36
|
"kind": "build",
|
37
37
|
"isDefault": true
|
38
38
|
},
|
39
|
-
// gcc
|
39
|
+
// gccでエラーが出た時に該当の箇所へジャンプさせるのに必要
|
40
40
|
"problemMatcher": "$gcc"
|
41
41
|
}
|
42
42
|
]
|