0


VSCode:使用CMakeLists.txt构建C++项目

vscode配置

插件:

  • CMake插件主要功能是CMake语法高亮、自动补全
  • CMake Tools的功能主要是结合VSCode IDE使用CMake这个工具,比如生成CMake项目、构建CMake项目等
  • CMake Tools Helper

CMake工具本身还是要下载到本地,并且配置环境变量。

项目结构

包括6部分:build文件夹、include文件夹、src文件夹、lib文件夹、bin文件夹和CMakeLists.txt。

在这里插入图片描述

编译

基本配置

首先安装VSCode插件CMake和CMake Tools

新建CMake项目

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

在这里插入图片描述

  • 然后选择适合你的编译器。这里我们选择GCC7.4.0:在这里插入图片描述
  • 然后根据提示输入项目名称:

在这里插入图片描述

  • 然后选择该项目是创建库还是可执行文件,这里我们选择可执行文件Executable:

在这里插入图片描述

  • 然后VSCode就会为你生成一个CMake项目。如下所示: - build文件夹是cmake指令的输出文件夹- 默认生成的CMakeLists.txt文件- 默认生成的main.cpp文件- 其他的文件夹比如include文件夹、src文件夹、bin文件夹等自己建立就行。在这里插入图片描述

我们可以看到CMakeLists.txt文件中的内容,如下:

project(exer VERSION 0.1.0)    #项目名字和版本

include(CTest)            #包含测试框架,我们可以不用
enable_testing()add_executable(exer main.cpp)       #添加源文件

set(CPACK_PROJECT_NAME ${PROJECT_NAME})set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})include(CPack)

将CMakeLists.txt修改如下:

#CMake 最低版本号要求cmake_minimum_required(VERSION 3.0.0)
 
# 项目信息
project(test1 VERSION 0.1.0)
 
#设置exe输出目录
set(EXECUTABLE_OUTPUT_PATH "${PROJECT_SOURCE_DIR}/bin")  
 
# 查找当前目录下的所有源文件
# 并将名称保存到 DIR_SRCS 变量
aux_source_directory(. DIR_SRCS)
 
# 指定生成目标
add_executable(Demo ${DIR_SRCS})#add_executable(${PROJECT_NAME} main.cpp)

在“test1[test1.exe]”上,鼠标右键弹出菜单,选择调试或debug。
在这里插入图片描述

编译

两种方法:

  • 点击底部的Build在这里插入图片描述
  • 打开命令板(Ctrl+Shift+P)并运行CMake:Build(输入cmake后VSCode会帮你列出所有支持的命令):

在这里插入图片描述

  • 或者直接按下快捷键F7。

设置文件c_cpp_properties.json

我们按住 ctrl + shift + p,搜索C/C++
在这里插入图片描述
我们配置一下编译器路径
在这里插入图片描述
更改IntelliSense模式:
在这里插入图片描述
然后关闭这个界面,我们会发现CppProject文件夹中多了一个.vscode文件夹,有一个c_cpp_properties.json

调试

方法一

设置好断点,按下快捷键 ctrl + shift + p , 键入: cmake:debug , 程序将执行,并停在断点所在位置。

或者直接按下快捷键ctrl+F5。

方法二(不看)

首先在源码中打上断点:
在这里插入图片描述
然后配置调试环境:

在这里插入图片描述
这个时候资源管理器下就会生成.vscode文件夹,下面有个launch.json文件
在这里插入图片描述
在这里插入图片描述
把下面一句:

"program":"输入程序名称,例如 ${workspaceFolder}/a.exe",

改成:(根据CMakeLists.txt文件内容,将会在build文件夹下生成result可执行文件)

"program":"${workspaceFolder}/build/result",

然后就可以加断点调试了。

代码的中文乱码问题

https://blog.csdn.net/m0_46577050/article/details/127604039

关于

选择编译的版本

  • 编译的一共有4个Debug 、Release 、MinRelSize 、RelWithDebInfo。区别在于: - Debug:禁用优化并包括调试信息。- Release:包括优化,但没有调试信息。- MinRelSize :优化尺寸。无调试信息。- RelWithDebInfo:优化速度,包括调试信息。- 更改方法:要选择变体,请打开命令面板(Ctrl+Shift+P)运行CMake:select var。或者点击下面深色

在这里插入图片描述

切换编译工具链

  • 你可以通过以下按钮更换套件工具链即编译器在这里插入图片描述
  • 或者是可以通过ctrl+shifl+p,输入CMake:Select a Kit
  • 如果想重新配置本地的编译工具链的安装位置,那么可以打开如下配置
CMake:Edit user-local CMake kits

参考

标签: vscode c++ github

本文转载自: https://blog.csdn.net/zhizhengguan/article/details/128056009
版权归原作者 OceanStar的学习笔记 所有, 如有侵权,请联系我们删除。

“VSCode:使用CMakeLists.txt构建C++项目”的评论:

还没有评论