WinCE5.0和WinCE6.0下编译选项介绍续

news/2024/7/3 11:34:37 标签: wince, build, windows, image, 嵌入式操作系统, patch

目前,在国内Windows CE的开发可以说是一种Windows CE.NET 4.2、Windows CE.NET 5.0、Windows Embedded CE 6.0多版本共存的情况。由于Windows CE.NET 4.2成熟的技术、丰富的I/O设备驱动以及被大多数的开发人员所熟悉,所以目前仍是嵌入式产品开发的主流。Windows CE.NET 5.0是CE 4.2的升级版。Windows Embedded CE 6.0是目前微软最新的嵌入式操作系统,强大的操作系统功能,于桌面开发系统开发工具的有效集成,以及与Windows CE.NET 5.0及其以前版本在开发技术上的一致性,都必将使它成为下一代智能设备的主流操作系统。所以,在学习Windows CE.NET 5.0的编译方法时,也不忘兼容的学习一下Windows Embedded CE 6.0的。以下是一篇转载文章:

      在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目录下的代码,也可以用这个,具体没有试过。

========================================================================

Platform Builder 5.0的Build OS菜单详解:

很多新手对Platform. Builder 5.0(以下简称PB 5.0)的Build OS菜单有所疑惑,不知道实际使用中应该如何选择,在此结合本人平时的经验,略作一番解释。
  
    首先第一组是编译命令,一共有三个:
  
    1.Sysgen
     根据当前的系统设计,生成一个系统映像。该操作不会更改之前编译(Build)完成的文件。这里所说的文件,指的是OS的文件,也就是位于WINCE500文件夹下面的各种lib库。
   
     有三点是必须要注意的:
     1).在上一次调用Sysgen之后,如果你已经增加或移除文件以及相关的Catalog,强烈建议选中“Clean Before Building",然后再开始新的一次Sysgen。因为这样会最大程度上减少出错的机会。
     2).该命令也会编译包含于系统设计工作区(Workspace)的工程(Project)。
     3).没有任何文件拷贝到目标(Release)文件夹。
   
   
    2. Build and Sysgen
     其实这是两个命令的组合,先是编译(Build),然后再调用Sysgen。该命令不仅编译公开(Public)代码,甚至连私有(Private)代码也不放过,所以耗费的时间会非常久。只有当你更改了OS的源文件,才建议选择该命令。   
     该命令和之前的Sysgen相同,也会编译包含于系统设计工作区(Workspace)的工程(Project)以及不将文件拷贝到目标(Release)文件夹。

接下来三个是命令标签,用来部分控制命令运行时的行为:
   
    3.Build and Sysgen Current BSP
    编译(Build)然后Sysgen当前的BSP包。和之前的两个命令一样,该命令也不会将文件拷贝到目标(Release)文件夹。
  
    需要注意的一点是,根据实际的使用经验,因为命令的参数不同,有时候即使你能成功调用调用Sysgen生成系统,也有可能调用本命令编译BSP包失败。遇到此情况,只能根据具体情况做相应的处理。
  
    4.Clean Before Building
     如果选中该标签,那么在执行命令之前都会清除上一次Sysgen创建的文件。
  
    5.Copy Files to Release Directory
     如果选中该标签,则在编译完毕之后,会把生成的文件拷贝到目标(Release)文件夹中。通常这个目标(Release)文件夹是你的工程所在的目录。
     该标签默认是选中的。
         
    6.Make Run-Time Image After Build
     如果选中该标签,在编译完毕之后,将生成一个运行映像(run-time image)。最典型的的运行映像(run-time image)便是NK.BIN。
     在你建立一个新的工程之后,该标签默认是选中的。

最后是一组辅助的命令:
   
     7.Copy Files to Release Directory
      将生成的文件拷贝到目标(Release)文件夹。


     8.Make Run-Time Image
      生成运行映像(Run-Time Image)。最常见的,也就是将所编译生成的文件组合成nk.bin。
    
   
     9.Batch Build
      用来选择多种配置来生成运行映像(Run-Time Image)。
   
     10.Open Release Directory
      打开命令行窗口,默认路径为目标(Release)文件夹。
   
     11.Set Active Configuration
      从现有的配置选择一个作为当前可用的。
    
     12.Configurations
      你可以通过该命令增添或删除配置。

   
     在PB的文档中也有关于这些命令的说明,具体位置你可以查看: Platform. Builder User''s Guide > Platform. Builder IDE > Platform. Builder User Interface > Menu Descriptions

========================================================================

  在WinCE6.0中,在VS2005的"Build"菜单中,有一个“Advanced Build Commands”,其中有很多编译选项:

  "Sysgen":相当于执行命令"blddemo -q”,一般第一次编译或者是改变了"Catalog"中的item的时候,就用这个了。

  "Clean Sysgen":相当于执行命令"blddemo clean -q",按照文档上的说明,当修改了 %_WINCEROOT%PublicCEBASEOAKMiscCesysgen.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目录下要编译的代码。


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xqhrs232/archive/2009/11/23/4855486.aspx


http://www.niftyadmin.cn/n/1516700.html

相关文章

python高德地图api调用实例_Python调用高德地图API实现经纬度换算、地图可视化

原标题:Python调用高德地图API实现经纬度换算、地图可视化 源 /经管人学数据分析文 /糖甜甜甜目前地图可视化的工具和函数比较多,但是在不知道相关地点经纬度的情况下,通过python调用高德地图API实现经纬度换算,并且直接在高德地图…

判定被7整除的简易方法【Martix67】

判断一个数的整除性对于某些除数来说是一件非常容易的事,比如2、3、4、5、6、8、9、10、11、12、15…… 但是对于7来说一直是一个难题,而判定是否被7整除在数字运算中又比较常用。我刚看到一种判定能否被7整除的方法,在这里写一下。 …

WINCE60下修改了PUBLIC下的源代码的快速编译方法

WINCE60下修改了PUBLIC下的源代码的快速编译方法 因为WINCE的组件都是分成一个个LIB/DLL的形式存在,所以只要把单个LIB/DLL编译更新然后再重新连接NK就可以起到快速编译NK的方法。不过由于NK里面的各个组件都是DLL的形式,这些DLL依存一些对应的LIB文件&…

flac转mp3_flac格式如何转mp3?音乐格式转换用这个方式就行了

flac是无损音频压缩编码,,其特点是无损压缩。不同于其他有损压缩编码如mp3及wma,它不会破坏任何原有的音频信息,所以可以还原音乐光盘音质。但很多音乐播放器不支持播放flac格式音乐文件。如果想播放flac格式音乐,只能…

WinCE中的Debug Zone调试

在WinCE的开发环境中支持Debug Zones功能,通常也被称为调试域,通过它可以控制打印信息。当某个调试域被打开以后,在这个域中的打印信息就会被打印出来,如果某个调试域被关闭了,那么这个域中的打印信息就会被关闭。调试…

flink源码分析_Flink 源码:Checkpoint 元数据详解

本文是 Flink 源码解析系列,通过阅读本文你能 get 到以下点:Flink 任务从 Checkpoint 处恢复流程概述Checkpoint 元数据详解从源码层分析:JM 该如何合理地给每个 subtask 分配 State,让 TM 去恢复❝声明:笔者的源码分析…

同余运算及其基本性质【Matrix67】

100除以7的余数是2,意思就是说把100个东西七个七个分成一组的话最后还剩2个。余数有一个严格的定义:假如被除数是a,除数是b(假设它们均为正整数),那么我们总能够找到一个小于b的自然数r和一个整数m&#xf…

python键盘事件_selenium+Python(鼠标和键盘事件)

本篇总结了 web 页面常用的一些操作元素方法,可以统称为行为事件有些 web 界面的选项菜单需要鼠标悬停在某个元素上才能显示出来(如百度页面的设置按钮)。1 简单操作1.点击(鼠标左键)页面按钮:click()2.请空输入框:clear()3.输入字符串&#…