本文转载自:https://code.visualstudio.com/docs/cpp/config-mingw
1.下载安装vscode
2.在vs code中安装cpptools,在vs code中快捷键 Ctrl+Shift+X,打开,然后输入:cpptools,安装第一个,如下图所示。
文章图片
3.在Windows中安装MinGW-w64 ,网址为:https://sourceforge.net/projects/mingw-w64/ ,安装MinGW-w64时,Architecture选项选择x86_64,Threads选项选择win32,Exception选项选择SEH,
4.将安装好的MinGW-w64的bin目录添加到Windows的Path环境变量中。
5.开始配置vs code,新建一个项目文件夹,随便命名如:helloword
6. vs code打开文件夹,
7.在vs vode中按快捷键Ctrl+Shift+P,如下图
文章图片
8.双击打开:Edit Configurations (UI)这一项,可以再到在hello word文件夹下自动生成了一个子文件夹:.vscode
9.在.vscode这个文件夹下可以看到:c_cpp_properties.json这个配置文件。
文章图片
10.设置vs code的编译器路径,这儿的编译器路径一般会按照这样的顺序寻找:首先寻找MSVC compiler,这个编译器是Windows的Visual Studio,如果安装了Visual Studio,则可以选择这个。其次寻找g++ on Windows Subsystem for Linux (WSL),最后寻找g++ on Mingw-w64。因为本文中安装的Mingw-w64不是默认的安装位置,并且没有安装Visual Studio和g++ on Windows Subsystem for Linux (WSL),所以搜索不到,因此该位置的C++编译器是空,如下图:
文章图片
然后添加安装好的 MinGW-w64的bin目录中的g++.exe,如下图:
文章图片
11.配置完编译器路径之后可以看到IntelliSense 模式这个选项显示不兼容,如图所示,这是因为msvc-x64对应的编译器是Windows中的Visual Studio,咱们编译器没有选择Visual Studio,所以IntelliSense 模式不兼容,此处,选择和g++ on Mingw-w64兼容的IntelliSense 模式模式就可以了,此处选择:gcc-x64,选择之后就可以看到不显示不兼容了。
文章图片
【vs code配置c++环境】
文章图片
12.如果你include了不在当前项目所在的文件夹中或者是不在标准库路径中的的header文件时,你需要在includePath中添加你include的header文件的路径。
文章图片
13.接下来,创建链接任务(Create a build task), 在vs code中按快捷键Ctrl+Shift+P,然后输入:task,如下图所示
文章图片
14.然后选择Tasks: Configure Default Build Task,然后会出现Create tasks.json file from template,这个选项,如下图所示,
文章图片
选择这个选项,然后会出现下图所示的几个选项,选择Others选项
文章图片
然后vs code就会在项目文件夹下的子文件夹.vscode中创建tasks.json这个文件,如下图所示:
文章图片
15.用如下代码替换tasks.json文件中的所有代码,
{
"version": "2.0.0",
"tasks": [
{
"label": "build hello world",
"type": "shell",
"command": "g++",
"args": ["-g", "-o", "helloworld", "helloworld.cpp"],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
替换之后的tasks.json文件如下图所示:
文章图片
其中,这段代码中的各个字段的含义:
command:表示用当前项目使用g++.exe去编译它,
args:表示传到g++中的命令行参数,
label:表示在VS Code Command Palette中显示的名称,可以自己定义喜欢的,
isDefault": true,是为了快捷编译设置的,如果设置为true,那么可以使用Ctrl+Shift+B这个快捷键来编译代码,如果设置为false,那么你必须使用Command Palette 菜单栏下的Run Build Task这个命令来编译它,如下图所示,可以看到Run Build Task这个命令后面有一个Ctrl+Shift+B这个快捷键,就是说明如果在tasks.json文件中设置了isDefault": true的话,你可以使用Ctrl+Shift+B快捷键快速编译代码。
文章图片
16.接下来配置Debug设置,首先使用Ctrl+Shift+P打开Command Palette,然后输入launch,你会看到出现Debug: Open launch.json这个选项,然后选择这个选项,
文章图片
选择Debug: Open launch.json这个选项之后会出现如下图所示的选项,然后选择C++(GDB/LLDB)这个选项,
文章图片
选择C++(GDB/LLDB)这个选项之后,vs code会在当前项目文件夹下的子文件夹.vscode中创建launch.json这个文件,如下图所示,
文章图片
在launch.json中可以看到配置,其中这些字段的含义如下:
program:这个字段的值使用helloworld.exe替换默认的program的值,这儿的值和tasks.json文件中设置的名称要一样。
miDebuggerPath:这个字段的值要使用Mingw-w64安装路径心中bin目录下的gdb.exe的路径,我的是:E:\mingw\az\mingw64\bin\gdb.exe
stopAtEntry:C++ extension会在main函数的第一行添加一个断点,stopAtEntry这个字段的值表示是否要让debugger 执行时停留在这个断点,如果设置为true,则debugger执行时会停留在这个断点,如果设置为false,那么debugger执行时不会停留在这个断点。
externalConsole:这个字段设置为true表示在外部控制台中运行程序。
配置完的launch.json文件如下图所示,其中设置miDebuggerPath的路径时需要对"\"添加转义字符"\",否则会出错:
文章图片
17.接下来就是编码源文件了,新建helloworld.cpp文件,添加代码并保存,如下图所示,
文章图片
18.编译程序,使用快捷键Ctrl+Shift+B或者是在View > Command Palette中点击Tasks: Run Build Task执行编译程序,编译完成后如下图所示:
文章图片
19.Start a debugging session
文章图片
文章图片
文章图片
推荐阅读
- c/c++|有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代...
- C/C++|C/C++ basis 02
- Qt实战|Qt+OpenCV联合开发(二十一)--图像翻转与旋转
- Qt实战|Qt+OpenCV联合开发(十四)--图像感兴趣区域(ROI)的提取
- Qt实战|Qt+OpenCV联合开发(十三)--通道分离与合并
- opencv|Qt+OpenCV联合开发(十六)--图像几何形状绘制
- Qt实战|Qt+OpenCV联合开发(十七)--随机数与随机颜色
- SNAT的MASQUERADE地址选择与端口选择
- IPTABLES的连接跟踪与NAT分析
- IPVS分析