第1章:环境搭建——CMake的安装与第一个Hello World

大家好,我是你们这门课的老朋友。今天咱们来聊聊CMake环境搭建这件事。

说实话,我见过太多人卡在第一步——装个CMake装到怀疑人生。其实没那么复杂,咱们一步步来。

1.1 为什么先搞定环境?

你想想看,写代码最怕什么?不是语法不会,是环境配不好。我刚开始用CMake那会儿,光安装就折腾了两天。后来发现,其实就是几个命令的事。

CMake是个跨平台的构建工具。说白了,它帮你生成Makefile或者Visual Studio的工程文件。你写一份CMakeLists.txt,就能在Windows、Linux、macOS上编译。嗯,这就是它的核心价值。

1.2 Windows下的安装

Windows用户,我个人建议走官方安装包路线。

  1. 去CMake官网下载安装包(选.msi格式)
  2. 双击安装,一路Next
  3. 关键一步:勾选"Add CMake to the system PATH"
  4. 安装完成后,打开cmd,输入cmake --version
注意: 我曾经遇到过PATH没勾选,结果命令行死活找不到cmake命令。后来手动加环境变量才解决。所以这一步千万别跳过。

如果你喜欢用包管理器,也可以试试:

# 用chocolatey
choco install cmake --installargs 'ADD_CMAKE_TO_PATH=System'

# 用scoop
scoop install cmake

1.3 Linux下的安装

Linux就简单多了。不同发行版命令略有不同,但核心思路一样。

# Ubuntu/Debian
sudo apt update
sudo apt install cmake

# CentOS/RHEL/Fedora
sudo yum install cmake
# 或者
sudo dnf install cmake

# Arch Linux
sudo pacman -S cmake

安装完验证一下:

cmake --version

如果版本太老怎么办?我建议用pip安装最新版:

pip install cmake
小技巧: 我个人习惯用pip安装,因为版本更新快。但要注意,pip安装的cmake可能不在系统PATH里,需要手动加一下。

1.4 macOS下的安装

macOS用户,我推荐用Homebrew。为什么?因为省心。

# 安装Homebrew(如果没有的话)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 安装CMake
brew install cmake

# 验证
cmake --version

你也可以去官网下载.dmg安装包。但我个人觉得,用Homebrew管理更方便,升级也简单。

注意: macOS自带的cmake版本可能比较老。我曾经在M1芯片的Mac上踩过坑——系统自带的cmake不支持arm64架构。后来用brew重装就好了。

1.5 验证安装是否成功

不管哪个平台,验证方法都一样:

cmake --version

你会看到类似这样的输出:

cmake version 3.28.1

CMake suite maintained and supported by Kitware (kitware.com/cmake).

如果看到版本号,恭喜你,安装成功了。

1.6 第一个Hello World项目

环境搭好了,咱们来写第一个CMake项目。别紧张,就几行代码。

先创建项目目录:

mkdir hello_cmake
cd hello_cmake

然后写一个C++源文件 main.cpp

#include <iostream>

int main() {
    std::cout << "Hello, CMake!" << std::endl;
    return 0;
}

再写CMakeLists.txt:

cmake_minimum_required(VERSION 3.10)
project(HelloCMake)

add_executable(hello main.cpp)

这三行什么意思?

  • cmake_minimum_required:指定最低CMake版本。我习惯写3.10,兼容性比较好。
  • project:定义项目名称。这里叫HelloCMake。
  • add_executable:告诉CMake,我们要生成一个可执行文件,源文件是main.cpp。

接下来,构建项目:

mkdir build
cd build
cmake ..
make

或者用更现代的方式:

cmake -B build
cmake --build build

运行看看:

./build/hello

你会看到:

Hello, CMake!
重点: 为什么要有build目录?我刚开始也不理解。后来发现,如果不分开,生成的那些中间文件会跟源码混在一起,乱得很。所以,养成习惯——建一个build目录,在里面编译。

1.7 知识体系总览

下面这张图,帮你理清本章的核心逻辑:

CMake环境搭建知识体系 CMake安装 Windows 官网下载 .msi 安装包 勾选添加到系统PATH choco / scoop 包管理器 Linux apt / yum / dnf 安装 pip install cmake 验证:cmake --version macOS brew install cmake 官网下载 .dmg 安装包 注意M1芯片兼容性 验证安装 → 第一个Hello World项目

1.8 常见问题与避坑指南

问题 原因 解决方法
cmake命令找不到 没有添加到PATH 手动添加环境变量,或重新安装时勾选PATH选项
版本太老 系统自带的版本低 用pip或brew安装最新版
编译报错找不到头文件 CMakeLists.txt写错了 检查add_executable的源文件路径
macOS M1芯片编译失败 架构不兼容 用brew重装cmake,或指定架构
我的经验: 如果你在Windows上遇到cmake命令找不到,别慌。去系统环境变量里看看,把CMake的安装路径加进去就行。默认路径一般是 C:\Program Files\CMake\bin

好了,环境搭好了,第一个项目也跑起来了。是不是比想象中简单?

记住,CMake就是个工具,别怕它。后面咱们会慢慢深入,你会发现它其实挺有意思的。


公众号:蓝海资料掘金营,微信deep3321