自动make工具--CMake

http://www.cnblogs.com/lyq105/archive/2010/12/03/1895067.html

http://www.linuxidc.com/Linux/2015-10/124447.htm

CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CmakeLists.txt。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后再依一般的建构方式使用。这使得熟悉某个集成开发环境(IDE)的开发者可以用标准的方式建构他的软件,这种可以使用各平台的原生建构系统的能力是 CMake 和 SCons 等其他类似系统的区别之处。

CMake 可以编译源代码、制作程式库、产生适配器(wrapper)、还可以用任意的顺序建构执行档。CMake 支持 in-place 建构(二进档和源代码在同一个目录树中)和 out-of-place 建构(二进档在别的目录里),因此可以很容易从同一个源代码目录树中建构出多个二进档。CMake 也支持静态与动态程式库的建构。

“CMake”这个名字是“cross platform make”的缩写。虽然名字中含有“make”,但是CMake和Unix上常见的“make”系统是分开的,而且更为高阶。

时间: 2024-11-08 07:58:50

自动make工具--CMake的相关文章

GNU开发工具——CMake快速入门

GNU开发工具--CMake快速入门 一.CMake简介 不同Make工具,如GNU Make.QT的qmake.微软的MS nmake.BSD Make(pmake)等,遵循着不同的规范和标准,所执行的Makefile格式也不同.如果软件想跨平台,必须要保证能够在不同平台编译.而如果使用Make工具,必须为不同的Make工具编写不同的Makefile.CMake是一个比Make工具更高级的编译配置工具,是一个跨平台的.开源的构建系统(BuildSystem).CMake允许开发者编写一种平台无

GNU开发工具——CMake进阶

GNU开发工具--CMake进阶 一.CMake基础指令 1.cmake_minimum_required cmake_minimum_required (VERSION 2.8)cmake_minimum_required用于规定cmake程序的最低版本,可选.如果CMakeLists.txt文件中使用了高版本cmake特有的一些命令时,就需要使用cmake_minimum_required对CMake进行版本限制,提醒用户升级到相应版本后再执行cmake. 2.project project

GNU开发工具——CMake模块

GNU开发工具--CMake模块 一.find_packge高级功能 1.find_package的模式 find_package()有Module模式(基本用法)和Config模式(完全用法),其中Module模式是基础,Config模式则提供复杂高级功能.find_package是否使用Config模式可以通过下列条件判断:(1)find_package()中指定CONFIG关键字(2)find_package()中指定NO_MODULE关键字(3)find_package()中使用了不再M

bboss自动代码生成工具使用指南

本文介绍bboss自动代码生成工具使用方法 工具在线浏览效果: http://gencode.bbossgroups.com 在介绍之前首先了解一下bboss自动代码生成工具能帮助我们做哪些事情. 通过自动代码生成框架,根据模板可以自动生成数据库表的增.删.改.分页查询.列表查询.国际化功能对应的java.jsp程序和配置文件,包括: 1.mvc控制器 2.业务组件 3.PO实体类 4.jsp文件 可以定制不同风格的界面模板,目前提供了一套bboss平台的基础ui风格和一套bboss普通ui风格

huhamhire-hosts — Hosts文件自动配置工具

https://www.anotherhome.net/1376 推荐配合EasyGoAgent使用: EasyGoAgent — 开箱即用的GoAgent Update 2015.5.15 数据文件V1.5.7已更新, 数据包下载:http://pan.baidu.com/s/1mgrExrM (感谢网友zzd911) Update 2015.4.1 数据文件V1.5.6已更新, 数据包下载:http://pan.baidu.com/s/1qWqOtUO Update 2015.2.4 数据文

Syncovery 是目前功能最为强大的实时自动备份工具

Syncovery Pro(原名叫做Super Flexible Synchronizer) 是目前功能最为强大的实时自动备份工具,连FTP.WebDAV等全部支持! 最近从V6开始改用比较好记.易懂的新名称 SynCovery 了. 功能与Super Flexible Synchronizer仍然完全相同. 备份您的数据和同步个人电脑,Mac电脑,服务器,笔记本电脑和在线存储空间. 您可以设置很多不同的工作,因为你需要运行它们手动或使用排程. Syncovery与本地硬盘,网络驱动器和任何其他

文件夹自动同步工具

这是我之前开发的文件夹自动同步工具,主要实现开发机和服务器之间的文件夹同步. 项目地址: https://github.com/mike-zhang/autoSync 问题描述 在windows下修改代码,到服务器上去编译,但每次都要通过winscp之类的工具拖拽上去(当然你也可以通过scp命令行的方式). 每次修改的文件很少,而且可能位于不同的目录,每次都重复覆盖文件的操作感觉比较麻烦,所以开发了这个自动文件夹自动同步工具. 当然这个工具也可以用于两台linux服务器之间的文件夹同步. 工具介

自动测试工具介绍

今天在网上寻找移动端自动化测试工具时,发现了一家提供免费的软件自动化测试工具的公司.这家公司提供了一系列的自动化软件测试工具.感觉还是不错的,这里介绍一下这些自动化测试软件 1.TestCenter TestCenter是面向测试流程和测试用例库的测试管理工具,它可以帮助您:测试用例的过程管理,对测试需求过程.测试用例设计过程.业务组件设计实现过程等 整个测试过程进行管理. 测试管理平台是构建测试流程.测试用例库的基础:● 标准化测试用例库构建支持手工测试用例和自动化测试用例,支持测试用例树型结

iOS 本地自动打包工具

1.为什么要自动打包工具? 每修改一个问题,测试都让你打包一个上传fir , 你要clean -> 编译打包 -> 上传fir -> 通知测试.而且打包速度好慢,太浪费时间了.如果有一个工具能自动的帮你做完上面所有的事情,岂不是快哉? 2.网上有那么多自动打包工具,我直接下载就行了为啥还要学习? 没错网上有很多打包工具,包括github上也有一些直接从github下载并打包上传的,但是他们的不一定适合你,首先下载下来要配置各种参数,不会配,还有网上大多是针对普通项目,但是我们项目是coc