CMake是个好东西

简介:
相比起繁杂难记的autotools,CMake真是一个好东东啊!!
网址:
http://www.cmake.org
文档:
http://www.cmake.org/HTML/Documentation.html

假定项目为ProjectTest。项目结构如下:
src   放置源文件(*.h *.cpp),具体为
src/dira
src/dirb
src/dirc
bin   放置编译后的可执行程序
A.so B.a   第三方库

CMakelists.txt(放根目录下)可以这样写:

#项目名称
PROJECT (ProjectTest)

#头文件路径
INCLUDE_DIRECTORIES(
    src
/ dira 
    src
/ dirb 
    src
/ dirc 
    )

#表示cpp文件列表的变量,如${DIRA_SRCS}代表src
/ dira目录下的所有源文件
AUX_SOURCE_DIRECTORY(src
/ dira DIRA_SRCS)
AUX_SOURCE_DIRECTORY(src
/ dirb DIRB_SRCS)
AUX_SOURCE_DIRECTORY(src
/ dirc DIRC_SRCS)

#设置变量${TEST_SRCS}
SET(TEST_SRCS
    ${DIRA_SRCS}
    ${DIRB_SRCS}
    ${DIRC_SRCS}
    )

#需要链接的第三方库
SET(LIBRARYS
    A.so
    B.a
    )

#添加可执行文件生成任务
ADD_EXECUTABLE(bin
/ test ${TEST_SRCS}})

#添加链接库
TARGET_LINK_LIBRARIES(bin
/ test ${LIBRARYS})


运行cmake CMakelists.txt,生成一份pp的Makefile文件--非常愉快的使用体验。

本文转自xiaotie博客园博客,原文链接http://www.cnblogs.com/xiaotie/archive/2006/04/17/376778.html如需转载请自行联系原作者


xiaotie 集异璧实验室(GEBLAB)

相关文章
|
4天前
|
存储 自然语言处理 Linux
CMake基础(1)初识CMake
CMake基础(1)初识CMake
17 0
|
8月前
|
C++
CMake中使用vcpkg
vcpkg是一个微软开源的C++包管理器。 在以前的开发中,如果在项目中需要使用某个开源库,例如qt,我们需要取官网下载qt的源码,然后构建得到对应的库,然后在项目中链接这个库。对于自己熟悉的库还好说,若是不熟悉的库,如何拉取源码?如何构建?如何在项目中引用?等等这些问题通常会困扰我们,然而,大多数情况下,我们只是使用这个开源库,并不需要关心这个库的构建和编译等问题。如此,在以前的开发过程中,往往会花费不少的时间在引入开源库上。 vcpkg是在背景下开发出来的,通过vcpkg,我们可以在项目中很方便的引入开源库,不用再关心拉取代码、构建开源库的这些事情。 CMake构建的项目中引入开源库
114 0
|
Linux 异构计算
|
C++
cmake安装与使用
cmake安装与使用
263 0
cmake安装与使用
|
Ubuntu
CMake
CMake
107 0
|
消息中间件 关系型数据库 C语言
|
Java Linux C语言
|
Linux 前端开发 关系型数据库
|
C语言
CMake的使用
使其生效的方法:首先cmake生成makefile,然后make edit_cache编辑编译选项;Linux下会打开一个文本框,可以更改,该完后再make生成目标文件——emacs不支持make edit_cache
1219 0