第一步:进行一个软件的下载(VSCode + SFML + mingw)。
这三份文件可在各自的官网进行下载。其中 SFML & mingw 均不需安装,但需要进行一个解压。(不过小编建议将 SFML 解压在以后需要 coding 的磁盘内。)
第二步:进行一个环境变量的配置
-
进入高级系统设置
- 高级系统设置的打开方法(直接在搜索框内搜索)
-
新增 Path 中的变量(用户变量 & 系统变量均可)
- 分别填入 mingw & SFML 目录下 bin 文件的路径。
- 示例:
-
-
新增用户环境中的变量
- 分别添加变量名为 CPLUS_INCLUDE_PATH & LIBRARY_PATH 的项,变量值分别为 SFML 目录下 include 和 lib 文件夹的路径。
- 分别添加变量名为 CPLUS_INCLUDE_PATH & LIBRARY_PATH 的项,变量值分别为 SFML 目录下 include 和 lib 文件夹的路径。
-
校验 minw 是否配置成功
- 打开 cmd,输入 g++ -v 。
- 若出现类似下列版本信息,则表明配置成功。
第三步:进行一个 VSCode 的配置
-
打开 vsc,新建文件夹。
-
输入 Ctrl + Shift + p,输入 c++.json,打开文件。
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"E:\\Path\\SFML-2.5.1\\include"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"compilerPath": "E:\\Path\\minwin\\mingw64\\bin\\gcc.exe",
"cStandard": "gnu17",
"cppStandard": "gnu++14",
"intelliSenseMode": "windows-gcc-x64"
}
],
"version": 4
}
3.同理,在生成的 .vscode 文件夹中配置 tasks.json
- 因为 vscode中c_cpp_properties.json的"includePath"只是告诉vscode插件在哪里找到头文件,便于进行源码查看和debug,并没有告诉gcc编译器这个路径!!!
- 因此,在 “args” 添加了 “-I”, “E:/Path/SFML-2.5.1/include” 告诉编译器 include 文件夹的位置。
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++.exe 生成活动文件",
"command": "E:\\Path\\minwin\\mingw64\\bin\\g++.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-lsfml-graphics",
"-lsfml-system",
"-lsfml-window",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"-I",
"E:/Path/SFML-2.5.1/include"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}
4.配置 launch.json
-
具现该文件的方法
-
直接在 .vscode 文件夹中新建 launch.json 文件。
-
点击 左侧栏的
-
图标,点击创建
-
-
同理,进行配置。(相应的 minw 路径仍需要改变一下)
{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "g++.exe - 生成和调试活动文件", "type": "cppdbg", "request": "launch", "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", "args": [], "stopAtEntry": false, "cwd": "${fileDirname}", "environment": [], "externalConsole": true, "MIMode": "gdb", "miDebuggerPath": "E:\\Path\\minwin\\mingw64\\bin\\gdb.exe", "setupCommands": [ { "description": "为 gdb 启用整齐打印", "text": "-enable-pretty-printing", "ignoreFailures": true }, { "description": "将反汇编风格设置为 Intel", "text": "-gdb-set disassembly-flavor intel", "ignoreFailures": true } ], "preLaunchTask": "C/C++: g++.exe 生成活动文件" } ] }
5.tasks.json文件的配置
{ "files.associations": { "iostream": "cpp", "*.tcc": "cpp" } }
第四步:测试配置是否成功
查阅的资料
①sfml+vscode+mingw环境配置(https://blog.youkuaiyun.com/u010757332/article/details/103436648)
②vscode编译c++提示 No such file or directory该怎么解决呢?(https://www.zhihu.com/question/373745969/answer/1581576356)