Cursor blinking

VS Code + CMake

C++ 基础|CMake|字数 700|阅读时长≈ 2 分钟

前言

CMake 是一个跨平台的开源构建工具,用于管理项目的构建过程。开发人员可以使用 CMake 来描述项目的目录结构、源文件、依赖关系等,并生成适用于不同构建系统的构建文件,如 Makefile、Visual Studio 项目文件等。通过简单的 CMakeLists.txt 文件,开发人员可以轻松地配置、构建和管理复杂的项目。CMake 具有跨平台性、灵活性和易维护性等特点,被广泛应用于现代软件开发中。

Visual Studio Code(简称VS Code)是由微软开发的跨平台轻量级代码编辑器,支持 Windows、macOS 和 Linux 操作系统。VS Code 具有丰富的功能和扩展生态系统,可满足开发人员的各种需求。它支持多种编程语言,具有智能代码补全、调试功能、Git 集成、插件支持等特性,使开发过程更高效。由于其灵活性和强大的功能,VS Code 成为许多开发人员喜爱的首选编辑器之一。

个人偏爱 VS Code 的轻量级和直观的界面,CMake 几乎成为 C/C++ 开源项目的标配,结合两者优点,构建 C++ 项目变得更加高效和便捷。

准备工作

安装 VS Code 和 CMake

具体安装和配置见于 VS Code 安装CMake 安装

安装 CMake 扩展插件

在插件商店中搜索 C/C++ Extension Pack,这个插件组合包含 CMake 和 CMake Tools,也可以单独安装 CMake 和 CMake Tools。

截屏2024-04-10 09.16.39.png
截屏2024-04-10 09.16.39.png

使用 CMake 构建程序

示例程序

通过一个简单的 C++ 程序来做演示,示例程序的目录结构和文件如下:

Code
.├── CMakeLists.txt├── hello.cpp├── include│   └── log.h└── src    └── log.cpp        // log.h 文件#include <iostream>#include <ctime> using namespace std;void log(const string& message);  // log.cpp 文件#include "../include/log.h" void log(const string& message) {        // 获取当前日期和时间    time_t now = time(0);    struct tm *localTime = localtime(&now);     // 格式化日期和时间    char buffer[80];    strftime(buffer, 80, "%Y-%m-%d %H:%M:%S", localTime);     // 输出日志信息    cout << "[" << buffer << "] " << message << endl;}  // hello.cpp 文件#include<iostream>#include "include/log.h" int main(){    std::cout << "Hello World!" << std::endl;    log("This is a log message.");}

其中 CMakeList.txt 配置如下:

Code
# 指定项目所需的最低CMake版本cmake_minimum_required(VERSION 3.21) # 用于定义项目的名称和支持的编程语言。在这里,项目名称被指定为 "hello",并且指定了使用 C++ 语言(CXX)来编写项目project(hello CXX)   # 用于创建一个名为 "hello" 的可执行文件,它由 hello.cpp 和 src/log.cpp 两个源文件构建而成add_executable(hello hello.cpp src/log.cpp) 

配置

VS Code 编辑器检测都有 CMakeList.txt 文件,VS Code 底部状态栏显示 CMake 的相关信息

截屏2024-04-12 10.05.31.png
截屏2024-04-12 10.05.31.png

选中左侧栏 CMake 可以修改编译器和变体等信息

截屏2024-04-12 10.07.29.png
截屏2024-04-12 10.07.29.png

也可以通过修改设置,把编译器、变体等信息显示于底部状态栏,使用快捷键 Command + , 或者通过左侧栏底部设置图标→设置 打开设置页面

截屏2024-04-12 10.12.03.png
截屏2024-04-12 10.12.03.png

如上图所示,搜索 cmake.options, Options:Status Bar Visibility 选择 visible 即可在状态栏中显示 CMake 配置信息。

运行

底部状态栏点击运行按钮

截屏2024-04-12 10.22.44.png
截屏2024-04-12 10.22.44.png

上图可见 CMake 的配置、生成和编译执行相关的日志,与 CMake 安装 示例里面的日志是一致的。

VS Code + CMake 的组合如此清新,正是我选择他们的原因。

参考文档