windows mobile 编译(生成镜像)提速

来源:互联网 发布:java多线程异步调用 编辑:程序博客网 时间:2024/04/28 19:43

 

windows mobile 编译镜像总是让人难以忍受的耗时,当然我们不能每次修改一点东西就build All一次。
下面是自己工作中积累的【不同情况下使用的编译命令】来加速生成镜像的过程,不排除有错的可能,欢迎指正。


对于修改,一般可以分为以下几种类型:
(1)修改public下的东西(一般不会修改这里的东西)
(2)修改了Cesysgen.bat或是会影响到Cesysgen.bat的环境变量,如以SYSGENBSP为前缀的变量
(3)修改platform/%myPlatform%下的东西

其中(3)又可以分为:
(4)只修改reg、bib文件
(5)只修改了%myPlatform%下的源码


一、 blddemo命令
关于blddemo,msdn里有详细介绍,但讲得很不清楚。
如果没记错的话,这是一个批处理(bat)文件,会执行一些列命令,可以根据不同情况使用不同参数,
下面主要是对其加以总结,到底什么时候用什么参数,这正是msdn没有讲清楚却是最重要的部分。

blddemo最常用的有三个参数:clean   -q      -qbsp

(1)clean:如果修改了跟sysgen相关的,也就是说上面的第(2)种情况,那就要加上clean。
(2)-q:如果没有修改public下的东西,则可加上-q,因为public下的东西一般是不会修改的,微软不推荐修改这里的东西,所以一般都会用到-q。
(3)-qbsp:我理解是quick BSP,也就是说只要是只修改了%myPlatform%下的东西,这一个参数便肯定能将修改编入镜像,不管是源码还是reg、bib或者其他。

-qbsp 似乎已包含了-q 功能,没见过二者同时用的情况,也就是说只改动%myPlatform%下的肯定就没改动public下的,所以-qbsp一般单独使用。

对于blddemo命令最常用参数组合整理如下:

若public没改变
(a)blddemo clean -q   :sysgen 改变(build all 就是使用了这个命令)
(b)blddemo -q :sysgen没变
(c)blddemo -qbsp:只改变了%myplatform%下的东西

这里从上到下耗时依次减少。


若public改变,则使用blddemo 或blddemo clean ,这两项很少用到,理论上用法,没验证过。

二、makeimg 命令
以上虽然blddemo -qbsp耗时最少,但耗时还是很长。我平时用的最多的是makeimg命令,这个命令就是生成镜像的意思,也是会执行一系列操作,属于最后一个步骤,所以耗时几乎是最短的了。但有个前提,它的所有操作都是针对release目录下的内容。
makeimg会执行reg、bib等的合并操作,但都是对release目录下的,比如platform.reg common.reg project.reg 三个合并成一个reginit.ini,明白了这一点就好办了。

对于上面所说的第(4)种情况,也就是只改动reg或bib文件,最快速的方法是:
直接修改release目录下的platform.reg、platform.bib,把需要的文件拷贝到release目录下,然后makeimg即可。

如果确定生效了,再到%myplatform%下修改,以防不小心执行了其他操作把release下的修改的东西给覆盖了。

三、最后贴一个公司里其他人用的一个bat文件,用时最少,我看不懂,这里不解释。
适用情况好像是修改%myplatform%下的源码文件,特别是修改了PLATFORM/COMMON/SRC/SOC/的情况。
懂的人请不吝赐教。
(里面的参数需要根据自己的平台设置一下)
call cls
set WMxxx=I:/wm604
set MyPlatform=DracoBSP
set Version=Retail

setlocal

pushd

I:

cd %WMxxx%/BuildScripts/WPC_%MyPlatform%_%Version%/
call baseOSEnv.bat

cd %WMxxx%/PLATFORM/COMMON/SRC/SOC/
call build
cd %WMxxx%/platform/%MyPlatform%
call build

REM %_FLATRELEASEDIR%/%_TGTPLAT%.cfg.xml
REM %_FLATRELEASEDIR%/%_TGTPLAT%.sku.xml

call packagegenerator packages.pkd.xml.merged
call dskimage %MyPlatform%.cfg.xml %MyPlatform%.sku.xml

cd %WMxxx%/PLATFORM/%MyPlatform%/FILES
call postdiskimage

popd

endlocal
pause

 

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 婴儿喜欢舔衣服怎么办 一岁半宝宝抵抗力差怎么办 两个月宝宝打嗝怎么办 衣服买大一码怎么办 8岁儿童头汗多怎么办 新生儿肛门红了怎么办 40天新生儿发烧怎么办 十天婴儿发烧怎么办 宝宝发烧37.3度怎么办 小孩发烧37.2度怎么办 宝宝37.5不退热怎么办 三个半月宝宝发烧怎么办 婴儿发烧37.4度怎么办 小孩发烧37.4度怎么办 20天新生儿低烧怎么办 四个月婴儿低烧怎么办 宝宝追听不好怎么办 2个多月宝宝不追听怎么办 宝宝拒吃奶粉怎么办 婴儿被吓到了怎么办 婴儿脊柱侧弯怎么办 母乳脂肪含量高怎么办 混合喂养宝宝拉肚子怎么办 混合喂养不吃奶粉怎么办 混合喂养宝宝便秘怎么办 混合喂养不吃奶瓶怎么办 混合喂养厌奶粉怎么办 气血虚奶水少怎么办 产后奶水不足怎么办啊 婴儿吐奶瓣和水怎么办 一岁半宝宝频繁喝夜奶怎么办 婴儿腹泻不吃奶怎么办 八个月宝宝脱水怎么办 宝宝呕吐脱水了怎么办 宝宝腹泻没精神怎么办 小孩拉稀没精神怎么办 宝宝拉稀脱水了怎么办 宝宝发烧还拉肚子怎么办 宝宝发烧后腹泻怎么办 吃海鲜拉肚子了怎么办 孕妇吃海鲜腹泻怎么办