http://blog.csdn.net/lsjseu/article/details/23395565

comake允许用户通过编写COMAKE文件,来帮助用户管理编译依赖以及编译环境的开发工具;

comake是Python编写的,所需要的COMAKE文件也是实际也是一个python脚本. 不过comake在设计的时候尽量让用户感觉不到是在写脚本而更像是在写配置。

以下为速成应用笔记:

-----------------------

comake使用规范

COMAKE文件存放地址:

COMAKE文件必须存放在模块/父目录级别下(若项目在父目录级别编译发布,则在父目录下存放COMAKE),且必须保存完整一级依赖列表;

如何快速使用comake

$ comake2 -h

参数:

-h --help 查看帮助

-D --debug 开启debug选项[默认不打开].

-S --scratch 创建一个默认的COMAKE文件 

-r --revision 从平台检出模块cvspath指定的TAG对应的依赖列表,配合-S使用

-W --watch-configs 查看本地依赖模块.-W -W可以查看模块引入来源.-W -W -W可以查看依赖模块的依赖.

-I --import-files 在解释COMAKE文件之前导入模块

-C --change directory 切换到directory下面执行[默认当前目录]

-Q --quiet 安静模式[默认不打开]

-U --update-configs 更新环境 

-B --build-configs 构建环境 

-F --force 构建环境时强制进行[默认不打开]

1.   使用comake2 -S就可以在当前目录下面产生一个空COMAKE文件了,这样能够节省用户从头开发编写的时间.

2.   执行comake2 -UB下载、编译一级和二级依赖;

3.   然后用户只需要修改COMAKE文件,然后再次使用comake2,接着就会产生Makefile文件.然后就可以直接make了

使用comake2例子:四部曲

·(1)comake2 -S //初始化COMAKE文件

如果代码库里已有COMAKE文件,可跳过这一步;

·(2) comake2 -UB //下载依赖代码,编译这些依赖代码

·(3)comake2 //生成Makefile

(4)执行make命令编译

comake2的更多相关文章

  1. C/C++ makefile自动生成工具(comake2,autotools,linux),希望能为开源做点微薄的贡献!

      序     在linux下C或C++项目开发,Makefile是必备的力气,但是发现手写很麻烦. 在百度有个comake2工具,用于自动生成Makefile工具,而在外边本想找一个同类工具,但发现 ...

  2. 使用BLADE构建c++工程管理

    使用BLADE构建c++工程管理 字数764 阅读2753 评论2 喜欢4 一. c++工程依赖管理 之前在百度一直使用comake2构建c++项目,十分方便.免去了手写Makefile的痛苦,很多项 ...

  3. Makefile 快速入门

    Makefile 速成 标签: Makefile编译器 2015-06-06 18:07 2396人阅读 评论(1) 收藏 举报  分类: C/C++(132)  Linux & MAC(19 ...

随机推荐

  1. DataGridView获取或者设置当前单元格的内容

    当前单元格指的是DataGridView焦点所在的单元格,它可以通过DataGridView对象的CurrentCell属性取得.如果当前单元格不存在的时候,返回null. 取得当前单元格的内容: o ...

  2. 前缀和的应用 CodeForces - 932B Recursive Queries

    题目链接: https://vjudge.net/problem/1377985/origin 题目大意就是要你把一个数字拆开,然后相乘. 要求得数要小于9,否则递归下去. 这里用到一个递归函数: i ...

  3. Java笔记(九)EnumMap & EnumSet

    EnumMap & EnumSet 一.EnumMap 一)基本用法 public static Map<Size, Integer> countBySize(List<Cl ...

  4. CSS-三角形及其原理

    CSS中三角形在网页中比较常见,以前是图片,不过现在基本上都是通过CSS可以完成,实现比较简单,我们可以看一组简单的三角形效果: 其实实现起来比较简单,通过空div然后设置宽高为0,之后可以四周bor ...

  5. SourceTree安装教程和破解教程

    SourceTree破解版是一款非常实用的编程工具,这是一款专业的Git和Hg客户端,界面简洁,操作简单易上手,是开发者的必备工具,欢迎大家来绿色资源网下载体验!SourceTree是一款免费的Git ...

  6. Mac下hadoop运行word count的坑

    Mac下hadoop运行word count的坑 Word count体现了Map Reduce的经典思想,是分布式计算中中的hello world.然而博主很幸运地遇到了Mac下特有的问题Mkdir ...

  7. Helm: Error: no available release name found

    如题,helm报这个错误 Helm: Error: no available release name found 错误的原因大概是因为 tiller没有正确的角色权限. 执行以下命令可解决这个问题. ...

  8. python之列表和生成器表达式篇

    一.协程函数的应用 写一个装饰器用于让协程函数不需要输入再执行一次next()函数 分析: 在装饰器中生成该协程函数的生成器, 并且执行一次next()函数 def firstNext(func): ...

  9. Windows平台下SVN安装配置及使用

    原文链接:https://www.cnblogs.com/snake-hand/archive/2013/06/09/3130022.html,等有空了玩一玩吧,现在没空.

  10. JAVA自学笔记18

    JAVA自学笔记18 1.Map接口: 1)功能: 2) Map<String,String>m=new HashMap<String,String>(); //添加元素,元素 ...