1 cmake的安装
CMake 是一个跨平台的自动化构建系统工具,它可以帮助开发者轻松地管理项目的构建过程。通过 CMake,你可以编写简单的配置文件来描述项目的结构和构建需求,而不必关心具体的构建细节。
1.1 使用命令安装
sudo apt install cmake
1.2 使用源码编译安装
官网链接: https://cmake.org/download/
源码编译方法,网上很多,这里不再赘述。
1.3 版本查看
安装完成之后通过一下命令,查看cmake版本。
cmake --version
2 创建项目目录结构
project_root
├── CMakeLists.txt
├── include
│ └── add.h
└── src
├── add.cpp
└── main.cpp
3 编写 CMakeLists.txt 文件
cmake_minimum_required(VERSION 3.22)
project(app_add)
set(CMAKE_CXX_STANDARD 17)
set(PROJECT_ROOT ${CMAKE_CURRENT_SOURCE_DIR})
message(STATUS "project_root: ${CMAKE_CURRENT_SOURCE_DIR}")
file(GLOB SRC_LIST "${PROJECT_ROOT}/src/*.cpp")
add_executable(${PROJECT_NAME} ${SRC_LIST})
target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_ROOT}/include)
每行含义:
- 指定了项目所需的最低 CMake 版本为 3.22。
- 定义了项目的名称为 app_add。
- 设置了项目使用的 C++ 标准为 C++17。
- 将当前 CMakeLists.txt 文件所在的目录路径赋值给 PROJECT_ROOT 变量。
- 输出当前项目的根目录路径,用于调试和确认路径是否正确。
- 使用 file(GLOB …) 命令来收集 src 目录下的所有 .cpp 文件,并将它们存储在 SRC_LIST 变量中。
- 使用add_executable 命令创建一个可执行文件。指定可执行文件目标即${PROJECT_NAME}即app_add,并指定了它的源文件列表为 SRC_LIST 变量中的文件。
- 使用 target_include_directories 命令来指定 ${PROJECT_NAME}的包含目录。
4 构建项目
cd project_root
mkdir build
cd build
cmake ..
make
5 运行结果
# 运行程序
./app_add
# 显示结果
a: 660
b: 6
a + b = 666