linux下使用配置vscode并使用cmake
文件目录搭建
在工作区创建三个文件夹:build、include、src,include用来存放头文件,src用来存放源文件,build是cmake和make的工作区,这样生成的文件都在build文件夹内,不至于外部结构看着乱糟糟的。
以下是文件目录的结构
-
workspace
-
.vscode
-
build
-
include
-
src
-
CMakeLists.txt (注意大小写,这个很严格)
-
main.cpp
-
VSCode配置文件
launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) 启动",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/main",//这里我cmake最终生成工程的名字为main,如果不同可以更该
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
],
"preLaunchTask": "make build",//选择任务的名称
"miDebuggerPath": "/usr/bin/gdb"//gdb的路径
}
]
}
task.json
{
"version": "2.0.0",
"tasks": [
{
"label": "make build",//编译的项目名,build 宇launch.json的preLaunchTask对应
"type": "shell",
"command": "cd ./build ;cmake .. ;make",//编译命令 进入当前文件夹的build,然后cmake,接下来make
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
CMakeLists
还未学习过太多关于CMakeLists的知识,这里写一个最简单的。
CMAKE_MINIMUM_REQUIRED(VERSION 3.0)
project(HELLO)
add_executable(main main.cpp)
最后生成二进制文件main,与launch的program相对应,如果这里更改二进制文件名称,那么program那里也需要更改。