为了使应用在支持BREW的手机上运行,必须将应用的源代码针对ARM CPU体系结构重新编译。其中编译后可执行文件应为一个扩展名为.mod的文件,例如myapp.mod。
进行重编译的最好工具就是ARM开发工具组(ARM Developer Suite),可以是1.0.1以上的版本,为了更好的实现兼容性,选用ARM开发工具组的版本最好与手机平台的自身编译版本一致。此外,建议将ARM开发工具组保存在C:/ADS,即确保ARM开发工具组保存在中间没有空格的路径下,否则在ARM开发工具组在执行编译的时候可能会产生问题。该路径在makefiles(.mak文件)中的假设是SDK中所有示例程序保存的位置。
ARM开发工具组使用一个命令行编译器去构造.mod文件,开发者也可以通过BREW add-in在集成开发环境中执行。构造程序是有一个同应用源文件在同一目录下的makefile。可以自行创建makefile,并运行它构造一个.mod文件,也可以使用BREW Add-in集成到Visual C++的用户界面中的工具。
为了创建makefile,打开 Visual C++中的应用项目工作空间(.dsw file)。这里应该有Visual C++的工具栏,上面有三个图标,显示“生成ARM Makefile”、“执行BREW MIF编辑器”和“执行BREW MIF编辑器”。为了生成makefile, 点击显示“生成ARM Makefile”的图标。如果当鼠标接近工具栏图标时并没有出现工具提示,选择Tools/Customize,在选择Toolbars标签,然后选中 Show ToolTips(显示工具提示)。如果工具栏和三个工具提示没能出现,则选择Tools / Customize,再选择 Add-ins and Macro Files (插件和宏文件)的标签,选中ARMMakeBREWApp,关闭对话框。如果工具栏还是没能显示,选择Tools / Customize,再选择 Toolbars标签,其中在工具栏列表中应有尚未选中的一项,叫Toolbar1,选中该项,工具栏就会出现。
如果ARM开发工具组是1.1或以上版本的ARM开发系统,可能需要修改一下Makefile文件。以下两行是需要修改的语句:
ZA = -za1 # LDR may only access 32-bit aligned addresses
ZAS = -zas4 # Min byte alignment for structures
将上两行更改为:
ZA = -zo1 # LDR may only access 32-bit aligned addresses
ZAS = -zos4 # Min byte alignment for structures
交叉编译既可以从IDE中运行又可以通过命令行的方式运行。在基于Visual Studio 的集成开发环境中,在Visual C++中选择Tools / BREW ARM Make即可开始编译该应用。
命令行编译的方法是,打开一个命令窗口(“DOS 框”) 并键入类似以下的命令:
nmake /f myapp.mak all
nmake是Visual C++中的一个应用程序。执行该操作的路径应包含在PC机的系统路径变量中,以方便使用。在这个命令中,“/f ”切换确定使用那个.mak file进行输入。“all”告诉nmake来重构目标文件。当构造完成之后,一个新.mod文件就会出现在应用的目录中,该文件是应用程序在设备上使用的二进制版本。几个中间文件也会出现在目录中。如果你想清除中间文件和应用模块文件,请在Visual C++选择Tools / BREW ARM Make Clean,也可以在一个命令窗口通过一个如下的命令来实现:
nmake /f myapp.mak clean
分享到:
相关推荐
深入brew开发,很好的参考进阶资料。对于学习C语言也很有一定的帮助。
BREW开发培训系列——高级——BREW 面向对象特点及其应用.pdf
(BREW 开发者 进阶教程)第1章 BREW平台与演进 第2章 BREW3.1图像处理高级编程 第3章 BREW多媒体接口 第4章 IVocoder接口介绍 第5章 ICamera接口 第6章 BREW 常用接口介绍 第7章 BREW 3.1 文件系统 第8章 BREW ...
———————————————————————————————————————————— 替换bottles 镜像源(可选) 该镜像是 Homebrew 二进制预编译包的镜像。 临时替换 export HOMEBREW_BOTTLE_DOMAIN=...
此书简洁而深入的介绍了brew的基本原理,非常适合已经入门但是还未从整体上掌握的brew开发者。
联通博路编写的开发者进阶教程,pdf版本,转载。 共18部分: 第一部分目录如下: Brew概述 Brew技术演进 Brew3.1.5 sp01 Brew 4.0简介 Brew Mobile Platform简介 Brew 技术优势 Brew与其他技术的对比 以后各部分为...
为了优化全网增值业务合作管理,促进业务健康发展,在《中国电信移动增值业务合作管理 ... 现发布《中国电信全网增值业务合作管理办法(V2.0版)》,包括总册、短信业务分册、彩信业务分册、WAP业务分册、BREW业务...
BREW开发培训系列——高级——BREW 语音呼叫业务
BREW 开发者 进阶教程(共18章)BREW 开发者 进阶教程(共18章)BREW 开发者 进阶教程(共18章)BREW 开发者 进阶教程(共18章)
使用BREW开发定位应用程序使用BREW开发定位应用程序使用BREW开发定位应用程序使用BREW开发定位应用程序使用BREW开发定位应用程序使用BREW开发定位应用程序
BREW开发培训系列——BREW平台与演进——BREW概述、发展现状及趋势
brew 手机游戏开发实例brew 手机游戏开发实例brew 手机游戏开发实例brew 手机游戏开发实例
深入研究BREW手机游戏开发BREW开发-海信(王宏兵),不仅只是介绍了brew的游戏开发。
深入brew开发pdf与源代码,给大家分享了
基于brew平台下短信增值业务的设计与实现,张冬梅,,在3G移动通信网络中,基于短消息业务平台提供的短消息增值业务将有着巨大的市场需求。本文通过对BREW(Binary Run Environment Wireless,无线�
BREW编程经验——Dialog机制的使用方式.doc
高通brew初级培训+培训资料+Brew开发技术文档.doc+海信BREW开发.pdf
非常全面的介绍了BrewMP的开发工具,应用开发流程,常用的API接口,应用开发技巧以及移植的流程等。
BREW SDK介绍 BREW 的事件驱动机制 BREW 模块概念