windows--cmake语法讲解
前言
继上篇cmake实战演练后,初步掌握了通过cmake构建多工程的技能,但是cmake还有许多语法规则未掌握,今天继续学习下语法规则。
链接: 上一篇:cmake实战1
camke进一步理解:
cmake允许开发者编写一种平台无关的CMakeLists.txt文件来制定整个编译流程,然后再根据目标用户的平台进一步生成所需要的Makefile和工程文件,如Unix的Makefile或Windows的vs工程。从而做到"write once , run everywhere"。显然,cmake是一个比上述几种make更高级的编译配置工具。一些使用cmake作为项目架构的知名开源项目有 VTK,ITK,KDE,OpenCV,OSG等。
在linux平台上使用cmake生成Makefile并编译的流程如下:
- 编写CMake配置文件 CMakeLists.txt
- 执行命令cmake PATH 或者ccmake PATH 生成Makefile (ccmake提供了一个交互式界面)。其中,PATH是CMakeLists.txt所在目录。
- 使用make命令进行编译。
或许见过好几种Make工具,例如,QT的,微软的,,等等。这些Make工具遵循着不同的规范和标准,所执行的Makefile格式也千差万别。这样就带来了一个严峻的问题:如果软件想跨平台,必须要保证能够在不同平台编译。而如果使用上面的Make工具,就得为每一种标准写一次Makefile,这将是一件让人抓狂的工作。
cmake就是针对上面问题所设计的工具。
一、cmake语法
-
1.PROJECT
PROJECT(hello) 项目名称。此时会自动生成一些变量-- {PROJECT_NAME};
-
2.CMAKE_MINIMUM_REQUIRED
CMAKE_MINIMUM_REQUIRED(VERSION 2.10) 限定cmake最低版本;
-
3.AUX_SOURCE_DIRECTORY
AUX_SOURCE_DIRECTORY(< dir > < avariable >)