链接库写在编译链接命令里,如果没有使用到不会加入到生成的可执行文件里。所以tasks.json可以这样写,
{
"version": "2.0.0",
"tasks":
[
{
"type": "cppbuild",
"label": "C/C++: g++.exe 生成活动文件",
"command": "D:\\mingw64_1310\\bin\\g++.exe",
"args":
[
"-fdiagnostics-color=always",
"-g",
"-std=c++17",
"*.cpp",
"-lmingw32",
"-lSDL2main",
"-lSDL2",
"-lSDL2_image",
"-lSDL2_ttf",
"-lSDL2_mixer",
"-lsfml-audio",
"-lsfml-graphics",
"-lsfml-window",
"-lsfml-system"
],
"options":
{
"cwd": "${fileDirname}"
},
"problemMatcher":
[
"$gcc"
],
"group":
{
"kind": "build",
"isDefault": true
},
"detail": "编译器: D:\\mingw64_1310\\bin\\g++.exe",
"presentation":
{ //
"reveal": "silent",
"revealProblems": "onProblem",
"close": true
}
}
]
}
coderunner插件可以如下这样写,
{
"code-runner.executorMap":
{
"cpp": "cd $dir && g++ *.cpp -std=c++17 -Wall -fexec-charset=gbk -lmingw32 -lSDL2main -lSDL2 -lSDL2_image -lSDL2_ttf -lSDL2_mixer -lsfml-audio -lsfml-graphics -lsfml-window -lsfml-system && ./a",
}
}
launch.json是如下,
{
"version": "0.2.0",
"configurations": [
{
"name": "C/C++: g++.exe 生成和调试活动文件",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\a.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${fileDirname}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "D:\\mingw64_1310\\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 生成活动文件"
}
]
}
以上都是windows平台。以上2个库都没有包括网络库的链接。
下面的系统环境变量配置好后有可能需要重启电脑。 操作系统Path设置可以用分号 ; 也把sfml和sdl2的库和包含路径都写上,
新建的CPLUS_INCLUDE_PATH,LIBRARY_PATH,
PATH里面放bin目录的dll文件路径,