CMake 是一个跨平台的自动化构建系统,广泛用于管理软件构建过程。它使用 CMakeLists.txt 文件来配置项目的构建过程,并生成适用于不同编译器和操作系统的构建文件(如 Makefile、Visual Studio 项目文件等)。以下是一个简单的 CMake 教程,帮助你快速上手。
1. 安装 CMake
首先,你需要在你的系统上安装 CMake。你可以从 CMake 官方网站 下载并安装适合你操作系统的版本。
在 Linux 上,你可以使用包管理器安装 CMake:
sh
sudo apt-get install cmake
在 macOS 上,你可以使用 Homebrew 安装 CMake:
sh
brew install cmake
在 Windows 上,你可以下载并安装 CMake 的安装程序。
2. 创建一个简单的 CMake 项目
假设你有一个简单的 C++ 项目,项目结构如下:
my_project/
├── CMakeLists.txt
├── main.cpp
main.cpp 文件内容如下:
#include <iostream>
int main() {
std
::cout << "Hello, CMake!" << std::endl;
return 0;
}
3. 编写 CMakeLists.txt 文件
在 my_project 目录下创建一个 CMakeLists.txt 文件,内容如下:
# 指定 CMake 的最低版本要求
cmake_minimum_required(VERSION 3.10)
# 设置项目名称和版本
project(MyProject VERSION 1.0)
# 添加可执行文件
add_executable(MyProject main.cpp)
4. 生成构建系统
在 my_project 目录下创建一个 build 目录,并在其中运行 CMake 来生成构建系统:
sh
mkdir build
cd build
cmake
..
这将在 build 目录下生成适用于你的系统的构建文件(如 Makefile)。
5. 编译项目
在 build 目录下运行以下命令来编译项目:
sh
cmake --build .
这将生成可执行文件 MyProject(在 Windows 上可能是 MyProject.exe)。
6. 运行可执行文件
在 build 目录下运行生成的可执行文件:
sh
./MyProject
你应该会看到输出:
Hello, CMake!
7. 添加库
如果你的项目需要使用库,可以在 CMakeLists.txt 中添加库的依赖。例如,假设你有一个库 MyLibrary,你可以这样添加:
# 添加库
add_library(MyLibrary my_library.cpp)
# 链接库到可执行文件
target_link_libraries(MyProject MyLibrary)
8. 其他常用命令
• include_directories():添加头文件目录。
• target_include_directories():为特定目标添加头文件目录。
• target_compile_options():为特定目标添加编译选项。
• find_package():查找并加载外部库。
9. 进一步学习
CMake 的功能非常强大,支持复杂的项目配置。你可以通过阅读 CMake 官方文档 来深入学习更多高级功能。
希望这个简单的教程能帮助你快速上手 CMake!如果你有任何问题,欢迎继续提问。