当前位置:电脑软件 > 编程开发 > 调试编译 > CMake绿色版v3.7

CMake绿色版v3.7

大小:42.2MB语言:英文类别:调试编译

类型:国外软件授权:免费软件时间:2018/5/19

官网:

环境:Windows10,Windows8,Windows7,WinVista,WinXP

安全检测:无插件360通过腾讯通过金山通过瑞星通过

本地下载

CMake是一个跨平台的、开源的编译工具,用于构建、测试和打包软件,可以编译源代码、制作程式库、产生适配器(wrapper)、还可以用任意的顺序建构执行档。。软件是makefile的上层工具,它们的目的正是为了产生可移植的makefile,并简化自己动手写makefile时的巨大工作量.目前很多开源的项目都可以通过该工具来轻松构建工程,代码的分享者提供源代码和相应的软件配置文件,使用者就可以非常方便的在自己的电脑上构建相应的工程,进行开发和调试。
CMake

使用教程

1、一个简单的起点
最简单的工程就是将一些源文件编译为可执行程序。对于简单工程来说,只需要在CMakeList.txt添加2行内容即可
注意:CMake文件是不区分大小写的,这个例子中CMakeLists.txt文件中都使用小写字母
添加版本号和配置头文件,因为配置文件将会被写入到二进制树当中,我们需要把这个目录添加到头文件路径当中。我们接着创建一个”TutorialConfig.h.in”文件
2、添加一个库
现在我们为我们的工程添加一个库。这个库包含了自己实现的一个用来计算数的平方根函数。应用程序可以使用这个库来计算平方根,而不是使用编译器提供的标准库。教程里我们会把这个库放到一个叫做”MathFunctions”的子文件夹中。
在源文件中,我们也使用了USE_MYMATH,软件通过修改配置文件TutorialConfig.h.in配置文件来为源文件这个提供支持
3、安装和测试
下一步我们将为我们的工程添加安装规则和测试.安装规则相当简单,为了安装MathFunctions库和头文件,我们需要在MathFunctions文件夹的CMakeLists.txt文件中,添加如下内容:
install (TARGETS MathFunctions DESTINATION bin)
install (FILES MathFunctions.h DESTINATION include)
到这里你应该可以构建这个教程了,然后输入”make install”(或则使用IDE编译出INSTALL目标),它将安装适当的头文件,库,和可执行程序.软件变量”CMAKE_INSTALL_PREFIX”用来决定这些文件将被安装的根路径.添加测试也是很简单的
在构建完成之后需要运行”ctest”命令来运行上面的测试.第一个测试用例用来确保应用程序是否有段错误,crash,返回值非0.这个是一个简单的CTest测试.接下来的几个测试都是利用”PASS_REGULAR_EXPRESSION”测试属性来验证输出是否包含特定字符串.在这个例子当中验证平方根计算是否正确,以及当输入错误信息时候输出使用信息
4、添加系统自检
下一步让我们考虑添加一些代码到我们的工程,以支持目标平台没有的特性.在这个例子当中,我们将添加一些代码来验证目标平台是否具有log和exp函数.当然几乎所有的平台都有这些函数,教程假设一下这种少数情况.如果平台有log函数,那么我们在mysqrt函数中用它来计算输出
5、添加/生成一个通用的文件
创建一个已经计算好的平方根表,它作为构建过程的一部分,并且编译进我们的应用程序.为了实现这个功能,我们需要一个程序来生成这个表.在MathFunctions子文件夹中我们添加一个叫做MakeTable.cxx的文件
6、构建一个安装器
接着假设我们想把工程发布给其他人使用.我们希望提供不同平台的二进制文件和源文件.这里与我们之前在第三步中的安装有一些不同,那时我们安装我们已经从源代码构建出来的二进制文件.在这个例子中,我们将构建一个安装包,它支持二进制安装,以及cygwin、 debian、RPMs等工具的包管理特性.为了实现这个功能,我们会使用CPack来创建平台相关的安装包
7、添加对Dashboard支持
将我们的测试结果添加到Dashboard上是非常容易的.在教程的前面步骤当中我们已经为我们的工程定义了一些测试.我们只需要运行这些测试,并且提交他们到一个dashboard上.为了支持dashboard我们需要在顶层的CMakeLists.txt文件中包含CTest模块
CTest运行时将读取这个文件.你可以在你的工程中运行软件来生成一个简单的dashboard,进入构建目录下,然后执行”ctest -D Experimental”,将会把你的dashboard结果上传到Kitware’s工程dashboard上

功能特色

1、可扩展的开源系统,它以独立于编译器的方式管理操作系统中的构建过程。。
2、与许多跨平台系统不同,它的设计目的是与本地构建环境结合使用。
3、它可以生成一个本地构建环境,该环境将编译源代码、创建库、生成包装器并在任意组合中构建可执行文件。
4、支持in-place和out- place构建,因此可以从单个源树支持多个构建。它还支持静态和动态库构建。
5、支持依赖于多个库的复杂目录层次结构和应用程序。
6、处理必须构建可执行文件的情况,以便生成随后编译并链接到最终应用程序中的代码。
7、提供了许多预定义的命令,但是如果需要,您可以添加自己的命令。
8、为特定的编译器/操作系统组合添加其他makefile生成器。
下载地址

有问题?点击报错+投诉+提问

网友评论

0条评论

评分:
captcha 评论需审核后才能显示