CMakeLists.txt 文件的基本语法

一、概述

CMakeLists.txt 是 cmake 编译系统构建器的构建文件,就像是 make 中的 Makefile 一样。

Makefile 是通过固定的文件格式来构建目标,相对于 Makefile 而言,CMakeList 并没有固定的语法格式,他是通过各种函数和指令来完成构建。

一个基本的 CMakeList.txt 内容结构为:

二、常见用法

2.1 设置变量

设置变量的函数是 set,格式为:

表示设置一个 SOURCE_DIR 的变量,其值为/usr/src

2.2 添加头文件目录

添加上级目录下的 inc 目录作为头文件的搜索路径:

2.3 添加编译选项

添加编译选项的函数为 add_compile_options,例如指定编译标准为 c++11

设置编译标准还可以使用:set(CMAKE_CXX_STANDARD 11) 。

2.4 添加宏定义

添加一个__XTEST__的宏定义:

2.5 添加静态库

添加静态库依赖两个函数 link_directoriestarget_link_libraries,用法如下:

要注意的是 PROJ_ROOT_LIBRARY 设置的路径是全路径,并且 target_link_libraries 要在 add_executable 的后面声明。

发表评论