cmake

  • cmake解决了软件跨平台需要重复编写makefile的问题
  • 在 linux 平台下使用 CMake 生成 Makefile 并编译的流程如下:
  1. 编写 CMake 配置文件 CMakeLists.txt 。
  2. 执行命令 cmake PATH 或者 ccmake PATH 生成 Makefile 1
    其中, PATH 是 CMakeLists.txt 所在的目录。
  3. 使用 make 命令进行编译。
cmake 语法
  • CMakeLists.txt 的语法比较简单,由命令、注释和空格组成,其中命令是不区分大小写的。符号 # 后面的内容被认为是注释。命令由命令名称、小括号和参数组成,参数之间使用空格进行间隔。
    示例:
# CMake 最低版本号要求
cmake_minimum_required (VERSION 2.8)
# 项目信息
project (Demo1)
# 指定生成目标
add_executable(Demo main.cc)

对于上面的 CMakeLists.txt 文件,依次出现了几个命令:

1.  `cmake_minimum_required`:指定运行此配置文件所需的 CMake 的最低版本;
2.  `project`:参数值是 `Demo1`,该命令表示项目的名称是 `Demo1` 。
3.  `add_executable`: 将名为 [main.cc](http://main.cc/) 的源文件编译成一个名称为 Demo 的可执行文件。
  • 之后,在当前目录执行 cmake . ,得到 Makefile 后再使用 make 命令编译得到 Demo1 可执行文件.

常用命令

  • aux_source_directory 该命令会查找指定目录下的所有源文件,然后将结果存进指定变量名
  • add_library 将 src 目录中的源文件编译为静态链接库

你可能感兴趣的:(cmake)