bigbaicai

芯方式是以开云棋牌官网在线客服人、电子工程师等电子行业相关领域从业人员为核心的知识经验学习、分享、交流社群。 凭借开放、合作、共赢的运营理念,聚集了来自国内外知名院校和顶尖科技公司的开云棋牌官网在线客服人、电子工程师。 我们致力于营造专业、认真、有温度的分享交流环境,将高质量的内容和方案成规模地生产和分享,帮助个人和团队在芯方式找到有价值的Key。 http://www.icfans.com/

只改变某些源文件后,减少编译时间的方法

0
阅读(821)

[DESCRIPTION]
从W09.16开始, 在MAUI, 09A, 09B上新增了一类action:
check_dep
remake_dep
update_dep
check_dep/update_dep/remake_dep后面所跟参数是一个文件名(需要写明相对于MAUI 的路径
), 其可以扫描所有

这个文件相关的模块来决定要check/update/remake哪些模块, 而对与此文件不相关的模块
则不予重新
check/update/remake。
当所做修改影响到了任何.c和.h的dependency时,若要编译,需要使用update_dep命令
,当改动未涉及到依赖关

时,用remake_dep即可[具体请参照update和remake的区别]。
三者关系如下:
check_dep (check dependency module(s) after
source(s)/header(s) changed)
remake_dep (check_dep + remake)
update_dep (check_dep + update)
[SOLUTION]来自开云棋牌官网在线客服社区
*_dep命令后面必须跟上一个参数,这个参数可以是一个有过改动的文件的文件名,也可以是
一个临时的.lis文
件,这个.lis文件中保存了若干个有过改动的文件的列表。在命令中,文件都要列出其相对
地址。
这里的“改动过的文件”可以是.c文件,也可以是.h文件。
用临时的.lis文件将所有改动过的文件保存在其中,然后通过@fileName形式送给*_dep命
令。
用法如下:
make $CUSTOMER $PROJECT remake_dep changedFile
make $CUSTOMER $PROJECT remake_dep @changedFileList
其中,
changedFile = changed source/header's name (init\include\init.h, ...)
=> VALID ONLY when action is one of (check_dep remake_dep update_dep)
=> MANDATORY when action is one of (check_dep remake_dep
update_dep) and @files is NOT specified
@ changedFileList = Specify more changed sources/headers via a file
(change list)
=> VALID ONLY when action is one of (check_dep remake_dep
update_dep)
=> MANDATORY when action is one of (check_dep remake_dep
update_dep) and file
例如: make $CUSTOMER $PROJECT check_dep init\include\init.h
make $CUSTOMER $PROJECT update_dep @make\init\init.lis
make $CUSTOMER $PROJECT remake_dep init\src\init.c

Baidu
map