Linux 上的 CMake 工具入门
CMake 是一个开源的跨平台工具,它使用编译器和平台独立的配置文件来生成特定于您的编译器和平台的本机构建工具文件。
CMake 工具扩展集成了 Visual Studio Code 和 CMake,可以轻松配置、构建和调试 C++ 项目。
在本教程中,您将使用 Visual Studio Code 的 CMake 工具扩展在 Linux 上配置、构建和调试简单的 C++ CMake 项目。除了安装 CMake、编译器、调试器和构建工具之外,本教程中的步骤通常适用于如何在其他平台(例如 Windows)上使用 CMake。
如果您遇到任何问题,请在VS Code 文档存储库中提交本教程的问题。此外,有关 CMake 工具的更多一般信息,请参阅CMake Tools for Visual Studio Code 文档
先决条件
要在 Ubuntu 上完成本教程,请安装以下软件:
-
VS Code 的 C++ 扩展。通过在扩展视图中搜索“c++”来安装 C/C++ 扩展( ⇧⌘X (Windows、Linux Ctrl+Shift+X ) )。
-
VS Code 的 CMake 工具扩展。通过在扩展视图中搜索“CMake 工具”来安装 CMake 工具扩展( ⇧⌘X (Windows、Linux Ctrl+Shift+X ) )。
-
您还需要安装 CMake、编译器、调试器和构建工具。
确保已安装 CMake
VS Code CMake 工具扩展通过使用系统上安装的 CMake 来完成其工作。为获得最佳结果,请使用 CMake 版本 3.27 或更高版本。
查看您的系统上是否已安装 CMake。打开终端窗口并输入以下命令:
cmake --version
要安装 CMake,或者要获取更高版本(如果您至少没有 3.27 版本),请参阅Kitware APT Repository中针对您的平台的说明。安装 3.27 或更高版本。
确保安装了开发工具
make
尽管您将使用 VS Code 编辑源代码,但您将使用系统上安装的编译器、调试器和构建工具(例如 )来编译和调试源代码。
对于本教程中的 Ubuntu,我们将使用 GCC 编译器、GDB 来调试并make
构建项目。Ubuntu 上默认不安装这些工具,因此您需要安装它们。幸运的是,这很容易。
检查是否安装了GCC
要查看您的系统上是否已安装 GCC,请打开终端窗口并输入以下命令:
gcc -v
如果未安装 GCC,请从终端窗口运行以下命令来更新 Ubuntu 软件包列表。过时的 Linux 发行版可能会妨碍获取最新的软件包。
sudo apt-get update
接下来,使用以下命令安装 GNU 编译器make
和 GDB 调试器:
sudo apt-get install build-essential gdb
创建一个CMake项目
CMakeLists.txt
如果您现有的 CMake 项目在根目录中已有文件,则可以跳到选择工具包来配置现有项目。
否则,为新项目创建一个文件夹。在终端窗口中,创建一个名为 的空文件夹cmakeQuickStart
,导航到其中,然后输入以下命令在该文件夹中打开 VS Code:
mkdir cmakeQuickStart
cd cmakeQuickStart
code .
该code .
命令在当前工作文件夹中打开 VS Code,该文件夹将成为您的“工作区”。
创建 CMake hello world 项目
CMake 工具扩展可以为您创建基本 CMake 项目的文件。打开命令面板 ( ⇧⌘P (Windows, Linux Ctrl+Shift+P ) ) 并运行CMake: Quick Start命令:
输入项目名称。这将被写入CMakeLists.txt
一些初始源文件。
接下来,选择可执行文件作为项目类型,以创建main.cpp
包含基本main()
函数的基本源文件 ( )。
注意:如果您想创建基本源文件和头文件,则应选择“库”。但对于本教程,可执行文件就可以了。如果系统提示您为文件夹配置 IntelliSense,请选择“允许”。
这将创建一个 hello world CMake 项目,其中包含main.cpp
, CMakeLists.txt
(它告诉 CMake 工具如何构建您的项目),以及一个build
以您的构建文件命名的文件夹:
选择套件
在使用 CMake 工具扩展构建项目之前,您需要对其进行配置以了解系统上的编译器。通过扫描“套件”来做到这一点。套件代表一个工具链,它是编译器、链接器和用于构建项目的其他工具。扫描套件:
-
打开命令面板(⇧⌘P(Windows、Linux Ctrl+Shift+P))并运行CMake:选择套件。该扩展将自动扫描您计算机上的工具包,并创建在您的系统上找到的编译器列表。
-
选择您要使用的编译器。例如,根据您安装的编译器,您可能会看到类似以下内容的内容:
配置你好世界
配置 CMake 项目必须执行两件事:选择一个套件(您刚刚所做的)并选择一个变体。
您之前选择的套件显示在CMake 工具侧栏中的项目状态视图中。例如:
要更改套件,您可以在 CMake 工具侧栏中的项目状态视图中单击该套件,或从命令面板中再次运行CMake:选择套件命令。如果您没有看到所需的编译器,您可以编辑cmake-tools-kits.json
项目中的文件。要编辑该文件,请打开命令面板 ( ⇧⌘P (Windows、Linux Ctrl+Shift+P ) ) 并运行CMake: Edit User-Local CMake Kits命令。
选择一个变体
变体包含有关如何构建项目的说明。默认情况下,CMake 工具扩展提供四个变体,每个变体对应一个默认构建类型:Debug
、Release
、MinRelSize
和RelWithDebInfo
。这些选项执行以下操作:
Debug
:禁用优化并包含调试信息。
Release
:包括优化但没有调试信息。
MinRelSize
:优化尺寸。没有调试信息。
RelWithDebInfo
:优化速度并包含调试信息。
要选择变体,请打开命令面板 ( ⇧⌘P (Windows、Linux Ctrl+Shift+P ) ) 运行CMake: Select Variant命令。
选择“调试”以将调试信息包含在您的构建中。
所选变体将显示在活动套件旁边的状态栏中。
CMake:配置
现在您已经选择了套件和变体,打开命令面板 ( ⇧⌘P (Windows、Linux Ctrl+Shift+P ) ) 并运行CMake:Configure命令来配置您的项目。这将使用您选择的套件和变体在项目的构建文件夹中生成构建文件。
构建你好世界
配置项目后,您就可以构建了。打开命令面板 ( ⇧⌘P (Windows、Linux Ctrl+Shift+P ) ) 并运行CMake: Build命令,或从状态栏中选择Build按钮。
您可以通过从命令面板中选择CMake:设置构建目标来选择要构建的目标。默认情况下,CMake Tools 构建所有目标。选定的目标将显示在“构建”节点下方的“CMake 工具”侧栏中的“项目状态”视图中,也可以从那里进行设置。
调试你好世界
要运行和调试您的项目,请打开main.cpp
并在该行上放置一个断点std::cout
。然后打开命令面板 ( ⇧⌘P (Windows, Linux Ctrl+Shift+P ) ) 并运行CMake: Debug。调试器将std::cout
在线上停止:
继续并按F5继续。
现在,您已使用 VS Code CMake 工具扩展来使用 CMake 在 Ubuntu 上构建和调试 C++ 应用程序。其他平台步骤相同;区别在于您如何为您选择的平台安装 CMake 和编译器/调试器。有关为其他平台设置编译器/调试器的说明,请参阅以下内容: