[原创]一步步教你用brew写游戏 6-真机运行
来源:互联网 发布:js 删除tr的某个td 编辑:程序博客网 时间:2024/06/06 18:42
一步步教你用brew写游戏
六 真机运行
本来这一讲讲的是brew内部实现,但发现论坛有些人下载了飞机游戏后编译真机文件时报了很多莫名其妙的错误,那么就临时差这一讲来讲一讲如何让自己的游戏在真正的手机上运行起来。
首先:配置真机编译环境,这个在http://blog.csdn.net/loseleo/archive/2010/03/14/5378587.aspx 这个帖子里有些,主要是ADS那个工具,所谓ADS,在百度百科中有提到:
ADS(ARM Developer Suite),是在1993年由Metrowerks公司开发是ARM处理器下最主要的开发工具。ADS 是全套的实时开发软件工具,包编译器生成的代码密度和执行速度优异。可快速低价地创建ARM 结构应用。ADS包括三种调试器ARMeXtended Debugger, AXD 向下兼容的ARMDebugger for Windows/ARM Debugger forUNIX 和ARM 符号调试器。其中AXD 不仅拥有低版本ARM调试器的所有功能,还新添了图形用户界面,更方便的视窗管理数据显示,格式化和编辑以及全套的命令行界面。该产品还包括RealMonitor™(可以在前台调试的同时断点续存并且在不中断应用的情况下读写内存跟踪调试工具)。
ADS对汇编、C/C++、java支持的均很好,是目前最成熟的ARM开发工具。很多ARM开发软件(例如Keil)也是借用的ADS的编译器。ADS在2006年版本已经发布到2.2。但国内大部分开发者使用的均是1.2版本。
我们用的就是1.2版本,在那个帖子里有下载地址和安装方法,安装后,首先我们点击brewtools 里面的 arm mak 编译器,如下图位置:
一会儿会有个提示框提示mak文件创建成功,就会在飞机文件夹内发现一个pfly_12.mak,这时有两条路,第一个如果是vs2003,那就点tools里面的BREW application ‘Make’ 菜单,在下方输出框内会有编译的结果,这个编译是用ADS编译的,比vs编译更加严格。
第二个如果是vs2005那就用http://blog.csdn.net/loseleo/archive/2010/03/14/5378587.aspx教程里面的编译方法。
一般错误都在上面这个帖子里面分析过了,还有几种错误见:
1:点击BREW application ‘Make’ 的时候报
file.c(234): Error: C3028E: <argument 3 to function call>: implicit cast of pointer to non-equal pointer
file.c(255): Warning: C2871W: static 'tank_HandleEvent' declared but not used
file.c: 5 warnings, 1 error, 0 serious errors
这个解决办法:
改一下mak文件就好了,這個是ADS的錯誤,你用文本編輯器打開mak文件
找到這裡
LFLAGS = $(LFLAGS) ....
把上面的改为
LFLAGS = $(LFLAGS) -verbose
2:编译有错误,提示 未定义 aeemodobj
这个是因为aeemodobj 是早期 brew SDK的结构体,现在3.1是不支持的,编译会报错:
解决办法,删除工程中的AEEAppGen.c 和AEEModGen.c,然后右键工程添加现有项,选择
C:/Program Files/BREW 3.1.5/sdk/src 下面的AEEAppGen.c 和AEEModGen.c 加入工程即可
这样就会生成一个pfly_12.mod 文件,这个文件就是我们手机要用的。
然后去申请一个sig文件
(https://brewx.qualcomm.com/testsig/testsig.jsp用户名:StarMap@chinaunicom.com.cn,密码:123456 谨慎使用,请勿更改 ),用efs explorer打开手机的efs,把mif拖进手机目录下的mif文件夹。
在mod文件夹下建立一个pfly_12的文件夹,把pfly.bar pfly_12.mod 和刚刚生成的sig文件改名为pfly_12.sig一起放进去,其他游戏如果有音乐文件也都按文件层次放好。
重启手机,进入天翼-手机下载-就会看到你的游戏咯~快去体验一下吧
完
- [原创]一步步教你用brew写游戏 6-真机运行
- [原创]一步步教你用brew写游戏 1 -磨刀不误砍柴工
- [原创]一步步教你用brew写游戏 2 -工欲善其事必先利其器
- [原创]一步步教你用brew写游戏 3-我也有helloworld
- [原创]一步步教你用brew写游戏 4-让我的helloworld显示
- [原创]一步步教你用brew写游戏 5-知己知彼百战百胜
- ios真机运行
- HBuilder之真机运行
- androidstudio无法真机运行
- 没有证书真机运行
- Ue4-iPhone真机运行
- ios 项目真机运行
- 编译android内核源码然后用真机运行
- Appium真机运行测试用例讲解
- Xcode无法用真机运行的问题
- Unity3D游戏开发从零单排(一) - 真机运行(Android和WindowsPhone)
- 如何使用Xcode分析调试在真机运行的UE4 IOS版游戏
- 一步步教你用liferay
- AutoLock 解决加锁后忘记解锁问题
- VS2010
- 关于SSH框架的集群,负载均衡,以及缓存集群的配置搭建 (二)
- 函数指针的值不是函数地址?
- Fedora14架设tftp服务器
- [原创]一步步教你用brew写游戏 6-真机运行
- CALL 对象
- 如何创建非全屏、可拖动、非独占、最顶层的窗口?
- 平方根的快速算法(sqrt)
- JOJ 2731 凸包模板题 && 贴个自己写的Graham凸包模板
- 设置reportView打印为横向
- 编程
- CSS命名规范点滴
- Android各种访问权限Permission详解