cmake vscode 高亮_VSCode与CMake搭配使用之基本配置

1.首先安装VSCode插件CMake和CMake Tools

315416c925b75ebb12440074bfcc74c1.png

CMake插件主要功能是CMake语法高亮、自动补全

CMake Tools的功能主要是结合VSCode IDE使用CMake这个工具,比如生成CMake项目、构建CMake项目等

2.新建CMake项目

Ctrl+Shift+p打开VSCode的指令面板,然后输入cmake:q,VSCode会根据输入自动提示,然后选择CMake: Quick Start

9efd7b344afd726e7fd0152a6e1edd20.png

然后选择适合你的编译器(VSCode会将你安装的编译器都罗列出来供你选择。如果你是交叉编译,那么就可以在这里配置你的交叉编译器),为方便演示这里我们选择GCC7.4.0:

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ppYXNpa2U=,size_16,color_FFFFFF,t_70#pic_center

然后根据提示输入项目名称:

ae1f8fb4ea589f589e1c76569943f321.png

然后选择该项目是创建库还是可执行文件,为了演示方便这里我们选择可执行文件Executable:

edcfbc3829522b99a18a384f41fcd7c8.png

然后VSCode就会为你生成一个CMake项目,如下所示:

b0813abe00a63d0a15943442bc26c0a6.png

build文件夹是cmake指令的输出文件夹

默认生成的CMakeLists.txt文件

默认生成的main.cpp文件

3. 编译项目

当然你可以在命令行中执行:

cd build

cmake ..

但是VSCode提供了更便捷的方式(点击底部的Build):

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ppYXNpa2U=,size_16,color_FFFFFF,t_70#pic_center

或者在VSCode的命令面板中选择build命令(输入cmake后VSCode会帮你列出所有支持的命令):

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ppYXNpa2U=,size_16,color_FFFFFF,t_70#pic_center

4. 调试

首先在源码中打上断点:

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ppYXNpa2U=,size_16,color_FFFFFF,t_70#pic_center

然后配置调试环境:

4ca04a6fe673e9fa1f0af300f0d39998.png

89e9c78fee147fa8ad95bc71cc615caa.png

然后就会自动跳入调试界面:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RBBLkGYw-1595251758476)(…/…/…/assets/images/tools/vscode/vscode_cmake_debug_done.png)]

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ppYXNpa2U=,size_16,color_FFFFFF,t_70#pic_center

下次进入调试有两种方法:

点击VSCode底部的Debug选项

Ctrl+Shift+p在VSCode的命令面板中选择CMake:Debug

5. 设置CMake变量

在.vscode/setting.json文件中可以设置CMake变量,示例如下:

{

"cmake.buildDirectory": "${workspaceRoot}/build/local",

"cmake.buildArgs": [

"--parallel"

],

"cmake.configureOnOpen": false,

"cmake.autoRestartBuild": true,

"C_Cpp.default.configurationProvider": "vector-of-bool.cmake-tools",

"C_Cpp.default.cStandard": "c11",

"C_Cpp.default.cppStandard": "c++17",

"C_Cpp.workspaceParsingPriority": "medium",

}

6. 参考链接

更多精彩内容,请关注微信公众号“边缘智能实验室”

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值