CMAKE学习记录

发布时间 2023-10-07 17:00:18作者: ouyang_wsgwz

介绍

CMake 是一个跨平台的开源构建工具,用于管理软件构建过程。它采用了一种声明式的构建配置语言,可以生成与平台无关的构建脚本,使得在不同的操作系统和编译器上都能够方便地构建项目。

CMake 的设计目标是提供一个简洁、高效的构建系统,以更好地支持大型项目的构建和管理。它具有以下特点:

  1. 简单易用:CMake 提供了简洁的声明式配置语言,可以方便地描述项目的组织结构、依赖关系和构建规则。

  2. 跨平台支持:CMake 可以生成各种操作系统和编译器平台所需的构建脚本,包括 Unix、Linux、Windows、Mac 等。

  3. 自动化构建:CMake 可以自动检测项目的依赖关系,自动生成构建规则,并支持增量构建、多线程构建等功能,提高构建效率。

  4. 模块化和可扩展:CMake 支持通过模块(Module)扩展功能,可以灵活地定制构建流程和配置选项。

  5. 多种构建系统支持:CMake 可以生成各种主流的构建系统的配置文件,如 Makefile、Ninja、Visual Studio、Xcode 等。

  6. 广泛应用:CMake 在众多开源项目和商业项目中得到了广泛的应下:

  7. 创建一个 CMakeLists.txt 文件,使用 CMake 提供的式语法描述项目的组织结构、依赖关系和构建规则。

  8. 运行 CMake 命令,CMake 会解析 CMakeLists.txt 文件,并根据配置生成对应的构建系统配置文件(如 Makefile、Visual Studio 工程文件等)。

  9. 使用生成的构建系统配置文件进行构建,即可生成可执行文件、库文件或其他构建产物。

常用函数

INCLUDE_DIRECTORIES

 1 include_directories ([AFTER|BEFORE] [SYSTEM] dir1 [dir2 ...]) 
将指定目录添加到编译器的头文件搜索路径之下,指定的目录被解释成当前源码路径的相对路径。