vscode+MinGW-W64编译、调试C/C++
前言
Windows为什么用vscode+MinGW-W64开发项目,就是为了不依赖微软全家桶,那么相应的项目容易在windows和linux系统之间迁移。 MinGW-W64是为windows上支持GCC运行提供头文件和库,包括常用的gcc和gdb等。英文功底好,可以直接访问官网,与时俱进。
一、vscode配置
下载安装MinGW-W64参见文档。安装成功后,可以进入cmd,敲gcc -v ,若安装成功即会显示gcc版本信息。这里理解一下安装的过程,安装其实就是将下载压缩包解压到系统目录下,让压缩包里面的可执行程序可以被命令行访问,即添加到path搜索路径下。 vscode配置MinGW-W64编译C参考文档。 值得注意的是,windows cmd是用户身份登录的,用户身份能使用gcc,并不意味着vscode能解析gcc。vscode的终端是powershell,必须把系统的path设置成可以访问MinGW-W64,才能正确解析gcc。
二、补充实际配置过程中遇到的问题
1. json有注释时报错
这纯粹是vscode提示的配置问题,窗口右下角的配置配成JSON with Comments 就可以解决该问题。 
2. 报不能认识某个json文件
$(file) 表示当前文件,如果vscode点中的是json文件,当尝试去编译这个文件时,自然就会报错。所以,上面参考文档中的vscode json配置只是适合于写简单的小程序。 
三、使用GDB调式
装了MinGW-W64后,GDB对应的可执行文件也已经安装。vscode只需要在launch中做适当配置,就可以使用GDB进行调试。
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "C:\\Program Files\\mingw64\\bin\\gdb.exe",
}
]
}

|