关于对WinCE工程的编译命令使用
来源:互联网 发布:遇到网络诈骗怎么做 编辑:程序博客网 时间:2024/05/22 03:10
刚接触WinCE那会,经常要对BSP包内Drivers文件夹内各驱动、Files文件夹下的配置文件(比如config.bib,platform.reg等)、BSP包内bootloader、WinCE 600路径Public目录下相关的系统UI与驱动进行修改,以及在BSP包根据修改的硬件电路进行相关的驱动增加与配置等等,而修改之后的编译却成了一个比较繁琐的过程,比如修改了PUBLIC目录下shell相关的文件,习惯用Clean或者Rebuilt and Clean Sysgen命令,因为不确定是不是要从头到尾重新编译生成。
可想而知,对整个CE系统与BSP编译链接生成复制,整个过程一个小时左右,极大浪费时间,影响进度。
VS2005下对CE系统编译的命令很多,见下图:
正确认识编译命令的使用,对整个系统的开发也是很重要的。
下面是参考一些信息:
WinCE5.0
在"Build OS”菜单中,我们会看到不同的编译选项:
"Sysgen","Build and Sysgen"和"Build and Sysgen current BSP"
Sysgen:不用多说,当你在"Catalog"中添加或删除了新的item的时候,就用这个吧。
Build and Sysgen:当你更新了\public目录下的源代码的时候,你就需要用这个了。一般比如在打patch以后,可能就需要进行Build and Sysgen了。
Build and Sysgen current BSP: 当你只改变了你的BSP部分的代码,就可以用这个选项。据说,当你改变了\platform目录下的代码,也可以用这个。
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目录下要编译的代码。
另外,其他参考信息:
在WinCE下面,创建工程,然后编译是需要花很长时间的。当我们第一编译完工程以后,如果需要改我们的驱动或者BSP,我们是不需要重新编译整个工程的:
1. 如果更改了driver,以WinCE6.0为例,我们可以在菜单里面选择“build”->“Open ReleaseDirectory in Build Window”,然后在弹出的命令行窗口中,通过dos命令切换到你要编译的driver的目录下面,然后运行“build”就可以了。也可以运行“build -c”会强制把所有的文件都编译一遍。被编译后的driver的dll会被自动拷贝到release目录下面,然后再切换的工程的release目录下面,运行一下“make image”就可以了。
2. 如果改变了OAL部分的代码,同样用上面介绍的方法,需要注意的是,OAL部分可能包含多个文件夹,如果改变了OAL里面的代码,不要进入OAL里面的文件夹去编译,一定要在OAL这层进行编译,这样OAL部分的lib,dll才会被重新编译并拷贝到release目录下面。
3. 如果改变了配置文件,比如config.bib,platform.reg文件,那么直接将这些文件拷贝到你的工程目录下面,然后运行一下“make image”就可以了。
4. 如果改变了eboot部分的代码,那按照步骤1的方法就可以了,可能你都不需要运行“make image”命令,因为可能你只需要eboot.bin或者eboot.nb0。
转自:http://taoqimhw.blog.163.com/blog/static/1155316720109109482134/
- 关于对WinCE工程的编译命令使用
- 使用命令行对 ARM DS5 的工程进行编译
- wince 6.0 VC工程 RadioButton的使用
- 关于Sate210 对wince的支持声明
- wince 编译命令解析
- wince安装补丁包后对原有工程的处理
- 关于一个android工程同时使用多个工程库,在编译时出现的问题
- 对VC++工程编译过程的梳理
- 批处理脚本编译VS2005工程的命令
- 关于如何在Android源码目录中建立自己的C工程,并用mm命令单独进行该C工程模块的编译,以及Android.mk的使用介绍(1)
- 关于如何在Android源码目录中建立自己的C工程,并用mm命令单独进行该C工程模块的编译,以及Android.mk的使用介绍(2)
- 关于Nebula3工程的几个编译选项
- 关于编译com工程的一些体会
- WINCE下QT库的静态编译命令
- wince VS2005工程更换SDK编译
- Windows7下创建/编译Wince工程出错
- 关于memsim工程的使用
- 使用freeline对Android工程进行快速编译
- PYTHON LIB
- 用JavaScript的eval获取Ajax返回的JavaScript代码
- C++习题:野人与修道士过河问题
- 选择最好的,不一定是最好的选择!
- Linux下mysql修改密码
- 关于对WinCE工程的编译命令使用
- cocos2d-x添加遮罩【CCRenderTexture】
- 鼠标右键菜单demo
- 在sae中,怎么将图片上传到storage的二级目录的代码?
- 世界上最优秀的程序员同时也是活得最快乐的人
- Nginx stick cookie curl 模块测试
- 最牛B的编码套路
- add(int index, E element) 在列表的指定位置插入元素
- ubuntu更改IP