CMake手册
本文起源:
目录:CMD#
CMake 使用方法导览
Preface : 本文是CMake官方文档CMake Tutorial () 翻译。经过一个样例工程从简单到复杂完善过程,文档介绍了CMake关键模块(cmake, ctest, cpack)功效和使用环境;从中能够一窥cmake大致形貌。正文以下:
本文下述内容是一个手把手使用指南;它涵盖了CMake需要处理公共构建系统部分问题。这些专题中很多专题已经在Mastering CMake一书中以单独章节被介绍过,不过经过一个样例工程看一看它们怎样工作也是很有帮助。本指南能够在CMake源码树Tests/Tutorial路径下找到。每一步全部有它自己子路径,其中包含该步骤一个完整指南。
作为基础起始点(步骤1)
最基础工程是一个从源代码文件中构建可实施文件例子。对于简单工程,只要一个两行CMakeLists文件就足够了。这将会作为我们指南起点。这份CMakeLists文件看起来像是这么:
?
1
2
3
cmake_minimum_required (VERSION )
project (Tutorial)
add_executable(Tutorial )
注意到这个例子在CMakeLists文件中使用了小写。CMake支持大写、小写、混合大小写命令。,而且它第一版很简单,以下所表示:
?
// A simple program that computes the square root of a number
// 计算一个数平方根简单程序
#include <>
#include <>
#include <>
int main (int argc, char *argv[])
{
if (argc < 2)
{
fprintf(stdout,"Usage: %s number\n",argv[0]);
return 1;
}
double inputValue = atof(argv[1]);
double outputValue = sqrt(inputValue);
fprintf(stdout,"The square root of %g is %g\n",
inputValue, outputValue);
return 0;
}
我们添加第一个特征用来为工程和可实施文件指定一个版本号。即使你能够在源代码中唯一指定它,不过你在CMakeLists文件中指定它能够提供愈加好灵活性。以下所表示,我么能够经过添加一个版本号来修改CMakeLists文件:
?
cmake_minimum_required (VERSION )
project (Tutorial)
# 版本号
set (Tutorial_VERSION_MAJOR 1)
set (Tutorial_VERSION_MINOR 0)
# 配置一个头文件,经过它向源代码中传输部分CMake设置。
configure_file (
"${PROJECT_SOURCE_DIR}/"
"${PROJECT_BINARY_DIR}/"
)
# 将二进制文件树添加到包含文件搜索路径中,
include_directories("${PROJECT_BINARY_DIR}")
# 添加可实施文件
add_executable(Tutorial )
因为配置过文件将会被写到二进制文件目录下,我们必需把该目录添加到包含文件搜索路径清单中。然后,:
?
1
2
3
// 和tutorial相关配置好选项和设置;
#define Tutorial_VERSION_MAJOR ***@Tutorial_VERSION_MAJOR@
#define Tutorial_VERSION_MINOR ***@Tutorial_VERSION_MINOR@
当CMake配置这份头文件时,***@Tutorial_VERSION_MAJOR@和***@Tutorial_V
CMake中文手册样稿 来自淘豆网m.daumloan.com转载请标明出处.