comake2
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的更多相关文章
- C/C++ makefile自动生成工具(comake2,autotools,linux),希望能为开源做点微薄的贡献!
序 在linux下C或C++项目开发,Makefile是必备的力气,但是发现手写很麻烦. 在百度有个comake2工具,用于自动生成Makefile工具,而在外边本想找一个同类工具,但发现 ...
- 使用BLADE构建c++工程管理
使用BLADE构建c++工程管理 字数764 阅读2753 评论2 喜欢4 一. c++工程依赖管理 之前在百度一直使用comake2构建c++项目,十分方便.免去了手写Makefile的痛苦,很多项 ...
- Makefile 快速入门
Makefile 速成 标签: Makefile编译器 2015-06-06 18:07 2396人阅读 评论(1) 收藏 举报 分类: C/C++(132) Linux & MAC(19 ...
随机推荐
- spring 启动异常Failed to read candidate component class
Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: ...
- 在UnrealEngine中用Custom节点实现马赛克效果
参考这位大神的Shaderhttp://blog.csdn.net/noahzuo/article/details/51316015 //input BaseUV 屏幕UV //intput Tili ...
- LeetCode(122. 买卖股票的最佳时机 II)
问题描述 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你可以尽可能地完成更多的交易(多次买卖一支股票). 注意:你不能同时参与多笔交易(你 ...
- 基于AT89C51单片机烟雾传感器
#include <reg51.h> #include <stdio.h> #define uchar unsigned char //宏定义无符号字符型 #define ui ...
- swal() 弹出层的用法
swal()方法是一个提示框: swal({ title: "", text: "请扫描用户手机上的付款码", type: "input", ...
- Spring 4 MVC example with Maven - [Source Code Download]
In this tutorial, we show you a Spring 4 MVC example, using Maven build tool. Technologies used : Sp ...
- 阿里云CentOS 7无外网IP的ECS访问外网(配置网关服务器)
说明: 1.必须要有一台机器具有外网IP的ECS. 2.如果不想配置具有外网IP的ECS时,可以购买NAT网关,但需要钱,贵.下面会说明NAT网关的配置. 3.最后吐槽一下阿里云VPC网关导致不能按照 ...
- api日常总结:前端常用js函数和CSS常用技巧
我的移动端media html{font-size:10px} @media screen and (min-width:321px) and (max-width:375px){html{font- ...
- .Net转Java.05.为啥MySQL没有nolock
今天忽然想到一个问题,原来为了提高SQL Server性能,公司规定查询语句一般都要加 WITH (NOLOCK)的 现在转Java了,用了MySQL为啥不提这个事情了? 先在MySQL里写了一个查询 ...
- Linux脚本程序
#!/bin/bash # array-ops.sh: 数组更多有趣的用法. array=( zero one two three four five ) # 元素 ]} # zero } # zer ...