Ubuntu18.04 + VSCode + CMake
程序员文章站
2024-02-22 15:07:34
...
Ubuntu18.04 + VSCode + CMake
- VSCode安装不必多说
- VSCode安装完成后,在扩展中搜索安装以下扩展插件
- C/C++
- C/C++ Compile Run
- CMake
- Cmake Tools
- 在项目中新建.vsocde文件夹,在文件夹中加入launch.json、task.json、c_cpp_properties.json三个配置文件
- launch.json 按F5调试的时候会执行这个配置文件,该配置文件的作用是运行编译生成的可执行文件,所以按照流程我们首先要编译生成可执行文件,编译生成可执行文件的操作由task.json完成,所以我们要在launch.json中要指明task.json中的任务名称,让其先执task.json编译生成可执行文件,然后再执行launch.json运行编译生成的可执行文件。
{
// 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", // 配置类型,这里只能为cppdbg
"request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)
"program": "${workspaceFolder}/build/${fileBasenameNoExtension}", // 将要进行调试的程序的路径
"args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可
"stopAtEntry": false, // 设为true时程序将暂停在程序入口处,我一般设置为true
"cwd": "${workspaceFolder}/build", // 调试程序时的工作目录
"environment": [],
"externalConsole": false, // 调试时是否显示控制台窗口,一般设置为true显示控制台,但是最新版cpptools有BUG
"MIMode": "gdb", // 指定连接的调试器,可以为gdb或lldb。但目前lldb在windows下没有预编译好的版本。
"setupCommands": [ // 用处未知,模板如此
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": false
}
],
"preLaunchTask": "build",// 这个地方很关键,指明task.json中的任务名称
}
]
}
- task.json 见名知意,执行一些任务的配置文件
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "build",//任务名称,launch.json会调用
"type": "shell",
"command": "mkdir build; cd ./build; cmake ../; make",//shell命令 利用CMakeLists.txt编译程序
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
- c_cpp_properties.json 主要用于在代码编写过程中检索头文件,没有该配置文件不影响编译运行,但是在代码中会提示找不到头文件什么的。
{
"configurations": [
{
"name": "Linux",
"includePath": [// 头文件路径
"${workspaceFolder}/**",
"/usr/include/**",
"/usr/local/opencv4.2/include/opencv4/**",// opencv
"/usr/local/darknet/include/**",// darknet
"/usr/local/seetaface6/include/**",// seetaface6
"/usr/local/cuda-10.0/include/**"// cuda
],
"defines": [],
"compilerPath": "/usr/bin/gcc",// 编译器路径
"cStandard": "c11",
"cppStandard": "c++14",
"intelliSenseMode": "gcc-x64"
}
],
"version": 4
}
- 目录结构大致如下
ProjetcName
├── build
├── CMakeLists.txt
├── test.cpp
└── .vscode
├── c_cpp_properties.json
├── launch.json
└── tasks.json
上一篇: ubuntu18.04安装vscode