在WinCE5.0中,在"Build OS”菜单中,我们会看到不同的编译选项:
BUILD CURRENT PROJECT------------编译当前的文件夹里面的代码,只更新OS部分的LIB/DLL文件
BUILD AND SYSGEN CURRENT PROJECT -------编译当前的文件夹里面的代码,并把OS部分修改后的LIB/DLL文件COPY到当前的OS 工程目录下(cesysgen/oak/lib)
SYSGEN CURRENT PROJECT-------把OS部分修改后的LIB/DLL文件COPY到当前的OS工程目录下(cesysgen/oak/lib)
BUILD OS /SYSGEN------基于目前OS里面已经存在的LIB/DLL来组装NK
BUILD OS /BUILD AND SYSGEN----把OS里面的源代码全部编译一遍形成LIB/DLL再组装NK
BUILD OS /BUILD AND SYSGEN CURRENT BSP----把BSP全部编译一遍再跟OS里面已经存在的LIB/DLL来组装NK
BUILD OS /MAKE RUN-TIME IMAGE-----在已经编译出来的OS+BSP的LIB/DLL的基础上来组装NK(修改了PLATFORM。XXX系列文件就要同步更新过去)
LIB/DLL有没更新看文件对应的时间会比较准一些!!!一般要选中CLEAN BEFORE BUILDING。
在WinCE6.0中,在VS2005的"Build"菜单中,有一个“Advanced Build Commands”,其中有很多编译选项:
"Sysgen":相当于执行命令"blddemo -q”,一般第一次编译或者是改变了"Catalog"中的item的时候,就用这个了。
"Clean Sysgen":相当于执行命令"blddemo clean -q",按照文档上的说明,当修改了 %_WINCEROOT/Public/CEBASE/OAK/Misc/Cesysgen.bat的时候,或者改变了以SYSGEN,BSP为前缀的环境变量的时候,需要使用这个来编译。
在此我说一下我个人的经验,一般只有第一次创建完工程的时候,我会用"Sysgen"命令,以后只要是改变了SYSGEN为前缀的环境变量的设置或者是"Catalog"中的item,我就会使用"Clean Sysgen",而改变了以BSP为前缀的环境变量要看具体情况,也不一定就要用"Clean Sysgen"。继续...
"Build and Sysgen":相当于执行命令"blddemo",当改变了/public目录下的代码,比如你打了WinCE的patch,你就需要用这个了。
"Rebuild and Sysgen Clean":相当于执行命令"blddemo clean cleanplat -c",相当于清除上一次编译生成的文件,然后重新编译/public目录和你的工程。
"Build and Sysgen Current BSP":相当于执行命令"blddemo -qbsp",仅编译/platform目录下的代码。所以当改变了/platform目录下的代码的时候或者说改变了BSP的代码的时候,可以用这个来编译。
"Rebuild and Clean Sysgen Current BSP":相当于执行命令"blddemo -qbsp -c",相当于完全重新编译/platform目录下要编译的代码。