Cmake的介绍和使用Cmake实践Cmake优点:1. 开发源代码,实用类BSD许可发布。2. 跨平台,并可以生成native编译配置文件,在linux/unix平台,生成makefile,在mac平台可以生成xcode,在windows平台可以生成msvc工程的配置文件。3. 能够管理大型项目4. 简化编译构建过程和编译过程,只需要cmake+make就可以5. 高效率6. 可扩展,可以为cmake编写特定功能的模块,扩充cmake功能如何安装cmake1. Cmake的安装可以使用autotools进行安装,点击cmake- 链接,可以对软件进行下载。2. ./configure3. make4. sudomakeinstall Cmake的原理 Helloworldcmake//#include<cstdio> intmain(){ printf("helloworldfrommain\n"); return0;} (注意大小写一个字母都不能错)向该文件中加入以下几行(稍后会做解释)PROJECT(HELLO)SET()MESSAGE(STATUS"ThisisBINARYdir"${HELLO_BINARY_DIR})MESSAGE(STATUS"ThisisSOURCEdir"${HELLO_SOURCE_DIR})ADD_EXECUTABLE(hello${SRC_LIST})运行以下命令:cmake.(别忘记加上这个点,表示当前目录)注意执行完这句话之后会生成几个文件如下:CMakeFiles,,,并且生成了Makefile然后执行make 就可以生成可执行文件hello这是当前目录下就会生成可执行文件如下图:对例子的解释::PROJECT(HELLO)SET()MESSAGE(STATUS"ThisisBINARYdir"${HELLO_BINARY_DIR})MESSAGE(STATUS"ThisisSOURCEdir"${HELLO_SOURCE_DIR})ADD_EXECUTABLE(hello${SRC_LIST}) Project的指令的语法是:PROJECT(projectname[CXX][C][JAVA])这个执行是用来定义工程的名称的和定义工程支持的语言。这个指令也隐式的定义了两个cmake变量:<projectname>_BINARY_DIR以及<projectname>_BINARY_DIR,这里就是HELLO_BINARY_DIR和HELLO_SOURCE_DIR,两个变量指的都是当前工程的路径。SET指令的语法:SET(VAR[VALUE][CACHETYPEDOCSTRING[FORCE]])Set指令是用来显式的定义变量的,我们之前用到的是SET()如果有多个源文件,也可以定义成SET(SRC_LISTm
Cmake的介绍和使用Cmake实践 来自淘豆网m.daumloan.com转载请标明出处.