中年プログラマーの息抜き

ブログをはじめました。気の向くままにプログラム関連ネタをメモしていきます。

Visual Studio Code(CL.exe)を使って、コンソールアプリ(C,CPPファイル)をデバッグ

f:id:tm-b:20200929012602j:plain

 

はじめに

先日に「Visual Studio Code」の「C/C++extension」をインストールしました。dbgやwindbgなどではなく「microsoft c++ build tools」だけでデバッグ環境を作ってみました。

 

環境変数を追加

動作環境により違うとは思いますけど、今回はこんな感じで設定しときます。

・PATH

C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.27.29110\bin\HostX86\x86

 

・INCLUDE

C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.27.29110\include

C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\ucrt

C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\shared

C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\um

C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\winrt

C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\cppwinrt

 

・LIB

C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.27.29110\lib\x86

C:\Program Files (x86)\Windows Kits\10\lib\10.0.18362.0\ucrt\x86

C:\Program Files (x86)\Windows Kits\10\lib\10.0.18362.0\um\x86

 

VSCode」で目指す環境

実はデバッグ自体はできなくてもよかったんですが、F5ボタンから実行できるようにしたかっただけです。。。CLオプションも適当ですので、あしからず。。

公式ページに記述の説明があったので参考にしました。

Configure Visual Studio Code for Microsoft C++

 

launch.json

{
"version": "0.0.0",
"configurations": [
{
"name": "CPP Launch (console)",
"type": "cppvsdbg",
"request": "launch",
"preLaunchTask": "debug-build",
"postDebugTask": "debug-clean",
"program": "${workspaceFolder}/.debug.exe",
"args": [],
"cwd": "${workspaceFolder}",
"stopAtEntry": false,
"externalConsole": false
}
]
}

 

task.json

{
"version": "2.0.0",
"tasks": [
{
"label": "debug-clean",
"type": "shell",
"command": "del",
"args": [ ".debug.*" ],
"group": "none"
},
{
"label": "debug-build",
"type": "shell",
"command": "C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.27.29110/bin/Hostx64/x86/cl.exe",
"args": [
"/Fd:.debug.pdb",
"/Fe:.debug.exe",
"/Fo:.debug.obj",
"/Zi",
"/Od",
"/MD",
"/std:c++17",
"/arch:SSE2",
"${relativeFile}"
],
"group": {
"kind": "build",
"isDefault": true
},
"problemMatcher": "$msCompile"
}
]
}

 

Build Tool

Build Tool(Build Tools for Visual Studio 2019) はここの下のアコーディオンVisual Studio 2019 のツール」を広げると探せます。

Download Visual Studio 2019 for Windows & Mac

 

まとめ

これで、F5からデバッグ実行可能になります。上で環境変数を設定したので、コマンドプロンプトからc++コンパイル。便利。