vs code 配置C++过程中竟然遇到了点小问题,所以记录一下。
vs code 官网下载:https://code.visualstudio.com/。
mingw-w64编译器下载 : http://mingw-w64.org/doku.php/download,安装过程中需要根据电脑架构Architecture(32位还是64位)做一个选择:
32位选i686,64位选择x86_64选项,其余不变,MinGW-W64安装完成后将bin路径添加到环境变量。在命令行中或windowpowershell 中检查安装情况: gcc -v ,gdb -v ,检查安装成功。设置环境变量的时候可以直接将C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0路径下的bin文件夹拷贝到C:\mingw64,将路径C:\mingw64\bin添加到系统的环境变量Path.
想知道MinGW是啥各个选项是什么,看这里(就是篇幅有点长):https://www.cnblogs.com/ggg-327931457/p/9694516.html。
vs code配置C++官网教程: https://code.visualstudio.com/docs/cpp/config-mingw。配置过程讲解的非常详细全面,注意一定要在整篇教程读完之后再去操作,仔细看基本上都可以看懂。
这篇文章的重点是:在配置过程中的tasks.json(编译指令设置)、launch.json(调试器设置)两个文件是自动生成 的,可能有时候会改动其中的g++ 和 gdb 路径。
完成C++的.cpp 文件之后:选择左侧调试器 Run and Debug ->create a lauch.json file。
接下来,选择C++ (GDB/LLDB)这个选项。如果没有出现这个选项,将上一步生成的launch.json文件删掉,重复上述操作。
配置好的launch.json如下图,注意“mDebugerPath”是否正确:
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "g++.exe build active file"
}
]
}
然后,再选择g++.exe build and debug active file选项。gcc.exe 选项是编译C语言的。
配置好的tasks.json 如下图,注意“command” “cwd”路径。
{
"tasks": [
{
"type": "shell",
"label": "g++.exe build active file",
"command": "C:\\mingw64\\bin\\g++.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "C:\\mingw64\\bin"
}
}
],
"version": "2.0.0"
}
这样tasks.json、launch.json两个文件自动添加完成。
至于c_cpp_properties.json 文件的作用和试用方法,在官方文档https://code.visualstudio.com/docs/cpp/config-mingw尾部有详细讲解。