VSCode中利用CMake编译多文件,并配置lanuch.json完成调试
在项目目录下有两个源文件main.cpp, swap.cpp和一个头文件swap.h和CMakeLists.txt文件,如下图所示:
main.cpp内容
swap.cpp内容
swap.h内容
CMakeLists.txt内容
首先需要在VSCODE中点击CTRL+SHIFT+P按钮,输入cmake完成cmake configure配置,配置完成后点击界面下方build即可完成CMake构建,如图所示:
在文件夹中会自动生成build文件夹,当然也可以手动添加该文件夹,利用cmake … 完成构建。接下来就是调试部分了,这里需要添加一个lanuch.json文件格式如下所示:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) 启动",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/main.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${fileDirname}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "D:\\Tools\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "将反汇编风格设置为 Intel",
"text": "-gdb-set disassembly-flavor intel",
"ignoreFailures": true
}
]
}
]
}
这里需要设置"program"参数添加生成的可执行文件以便于后续的调试进行,并且更改"miDebuggerPath"中gdb路径。配置完成后即可在VSCode中进行多个源文件间进行调试。如下图所示:
此外,需要注意的是,如果在cmd窗口或者powerShell窗口中直接输入
cmake ..
电脑安装Visual Studio的话,可能会调用Visual Studio中的MSVC来编译生成项目,如果想利用mingw编译生成的话,可以使用如下指令:
cmake -G "MinGW Makefiles" ..
而且该指令只需配置一次即可,无需重复配置。
最后在windows下,编译makefile文件需要使用如下语句:
mingw32-make.exe
生成结果如下图所示: