vs code使用mingw-w64编译运行c

在VS Code中使用Mingw-w64

1.安装Visual Studio代码。
2.为VS Code安装C ++扩展。
3.Mingw-w64安装到其路径中没有空格的文件夹(换句话说,不是C:/Program Files/的默认位置)。在本教程中,我们假定将其安装在下C:\Mingw-w64。

4.将您的Mingw-w64 bin文件夹的路径添加到Windows PATH环境变量。
转到Windows操作系统设置,然后为您的帐户搜索“编辑”环境变量。
选择Path变量,然后选择“ 编辑”。
选择“ 新建”,然后将Mingw-w64路径添加到系统路径。确切的路径取决于您安装的Mingw-w64版本和安装位置。这是一个示例:c:\mingw-w64\x86_64-8.1.0-win32-seh-rt_v6-rev0\mingw64\bin。
选择确定以保存Path更新。您将需要重新打开所有控制台窗口,以使新的PATH位置可用。

配置编译器路径
1.按Ctrl + Shift + P打开命令面板

2.输入c/c++,选择Edit Configurations (UI)

3.找到编译器路径设置。VS Code会根据在系统上找到的内容尝试使用默认编译器填充它。它首先查找MSVC编译器,然后在Windows Subsystem for Linux(WSL)上查找g ++,然后在Mingw-w64上查找g ++。如果安装了Visual Studio或WSL,则需要在此处更改编译器路径。如果使用Win32线程和SEH异常处理在C:\ mingw-w64下安装Mingw-w64版本8.1.0,则路径应如下所示:C:\mingw-w64\x86_64-8.1.0-win32-seh-rt_v6-rev0\mingw64\bin\g++.exe。如果在安装Mingw-w64时选择了其他选项,则您的路径将不同。
该编译器的路径设置是配置中的最重要的设置。该扩展使用它来推断C ++标准库头文件的路径。当扩展知道在哪里可以找到那些文件时,它可以在您编写代码时为您提供许多有用的信息。此信息称为IntelliSense,您将在本教程的后面看到一些示例。
4.将IntelliSense模式设置为gcc-x64。
创建构建任务
1.创建一个Tasks.json文件
2.用下面的代码替换

1
2
3
4
5
6
7
8
9
10
11
12
13
14
  "version": "2.0.0",
"tasks": [
{
"label": "build hello world",
"type": "shell",
"command": "g++",
"args": ["-g", "-o", "helloworld", "helloworld.cpp"],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}

该command设置指定要运行的程序;在这种情况下,它就是g ++。exe。该args数组指定将传递给g ++的命令行参数。必须按照编译器期望的顺序指定这些参数。
该label值就是您将在VS Code命令面板中看到的值;您可以随意命名。
对象中的isDefault”: true值group指定当您按Ctrl + Shift + B时将运行此任务。此属性仅出于方便起见;如果将其设置为false,则必须从“ 运行构建任务”下的“命令面板”菜单中运行它。
配置调试设置
1.在命令面板中,键入“ launch”,然后选择Debug: Open launch.json。接下来,选择GDB / LLDB环境。
2.对于program,请使用程序名称helloworld.exe(与您在tasks.json中指定的名称匹配)。您将需要调整您的miDebuggerPath值以匹配Mingw-w64安装的路径。
3.默认情况下,在C ++扩展名的第一行添加了一个断点main。该stopAtEntry值设置为true使调试器在该断点处停止。如果您希望忽略它,可以将其设置为false。
完整的launch.json内容应如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
  // 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": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/helloworld.exe",
"args": [],
"stopAtEntry": true,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "C:\\mingw-w64\\x86_64-8.1.0-win32-seh-rt_v6-rev0\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}

最后运行代码即可

作者

LiJun Lin

发布于

2019-11-25

更新于

2021-05-29

许可协议

评论