PB的编译过程
来源:互联网 发布:java equals和==的区别 编辑:程序博客网 时间:2024/04/30 16:14
PB的编译过程
2006-12-23 20:08执行cebuild.bat批处理文件。
cebuild.bat调用sysgen.bat批处理文件。
sysgen.bat调用cesysgen.bat批处理文件,cesysgen.bat负责在*.wce文件中搜索用户选择的特征,然后形成一系列环境变量。之后PB会显示这些变量,下面几个步骤就是显示收集的变量。
产生SYSGEN变量。每个SYSGEN变量对应一个特征。
产生CE_MODULE、COREDLL_COMPONENTS、FILESYS_COMPONENTS、DEVICE_COMPONENTS、GWE*_COMPONENTS、DCOM_MODULES、FONTS_COMPONENTS等环境变量。其中每个环境变量包含某一个特征具体的内容。从环境变量名称就可以看出来是哪种特征。
对_DEPTREES环境变量指定的每个目录分别执行sysgen.bat批处理。_DEPTREES这个变量的值是一些目录名(例如DCOM、IE、SERVERS、DIRECTX、WCESHELLFE等),这些目录名位于%WINCEROOT%/public。如果安装PB v4.1时默认安装路径,那么此目录路径为C:/WINCE410/Public。
编译BSP。因为我们采用的BSP是Emulator,所以PB会编译%WINCEROOT%/Platform/Emulator目录下三个子目录KERNEL、DRIVERS、GWE中的源码文件。
清除_FLATRELEASEDIR环境变量指定的目录下的所有文件、子目录。假如我们定制的平台路径为C:/Emulator,那么这个环境变量的值为C:/Emulator/RelDir/Emulator_X86Release。
复制%_PROJECTROOT%/所有文件到_FLATRELEASEDIR。
根据本地地区环境变量,寻找所有与本地语言相关的*.str文件复制到_FLATRELEASEDIR中。*.str文件中包含了字符串资源,将字符串与ID关联。在_FLATRELEASEDIR目录下你可以看到以地区码为目录名的子目录。
处理NLS(国家语言支持)数据。
执行fmerge.exe。合并所有*.bib文件为一个文件ce.bib,合并所有*.reg文件为一个文件reginit.ini。
执行cebuild.bat批处理文件。
执行fmerge.exe。合并所有*.db文件为一个文件initdb.int,合并所有*.dat文件为一个文件initobj.dat。
运行regcomp.exe压缩reginit.ini。
运行txt2ucde.exe。将整个CE平台涉及到的所有字符串转成unicode码。
运行res2exe.exe。将所有*.dll、*.exe、*.cpl文件中的资源更新。资源更新部分主要和语言相关。
运行Romimage.exe。将所有文件合并压缩成一个文件nk.bin(默认文件名)。
整个编译过程被调用的批处理文件和EXE文件主要包括:cebuild.bat、sysgen.bat、cesysgen.bat、nmake.exe、txt2ucde.exe、makeimg.exe、fmerge.exe、regcomp.exe、res2exe.exe、romimage.exe、build.exe。在这里声明一点,我不保证所讲述的PB的编译过程一定是准确无误的。从总体上讲PB所做的工作就是这样。
- PB的编译过程
- PB的编译过程
- PB的编译过程
- PB编译过程
- PB 的编译选项介绍
- 关于PB和存储过程的问题
- pb的存储过程生产数据窗口
- PB调用存储过程的声明方法
- PB 执行存储过程
- PB编译选项介绍
- PB编译错误整理
- PB编译顺序小结
- PB 编译小技巧
- 经过编译生成的pb程序需要的运行环境
- PB编译生成的BIN文件的格式
- PB调用Oracle 存储过程的样列
- 关于在PB中动态调用ORACLE的存储过程
- PB调用带返回值的存储过程
- 获取应用程序返回值
- 华为中兴争夺印度65亿美元移动合同
- replace替换及vector整体拷贝
- Linux下Mozilla浏览器下安装JAVA
- 直接选择排序是不稳定的.
- PB的编译过程
- webpart如何保存数据到自己的库中
- 92个经典开源项目集锦
- 我想把关于软件环境研究博客搬到这里来
- 阿里妈妈alimama广告平台购买使用心得
- 性格会对事情产生作用
- ORACLE客户端远程连接数据库
- 用opencv的highgui要小心
- JTree使用总结