s60 5版程序在symbian 3适配,升级,编译
来源:互联网 发布:编程机器人中文版 编辑:程序博客网 时间:2024/05/10 00:49
最近在做symbian^3的适配,因为我们的假面采用的都是系统控件,所以适配起来还是挺简单的。但是,在适配过程中也遇到了一些问题。
1、编译失败,很多头文件找不到
这是因为symbian^3将一些头文件放在了新的文件夹下面,只要将头文件所在的目录加到mmp中就可以了。当然,系统也提供了一个宏定义来方便我们的操作:APP_LAYER_SYSTEMINCLUDE。只要在mmp中嫁屉这个宏基本上就可以了。另外,还有一个叫APP_LAYER_SYSTEMINCLUDE_SYMBIAN的宏定义,跟前一个不同的是这个宏定义展开后包含的系统路径没前一个多,一般情况下,我们用第二个就可以了。最后一点,为了使我们的mmp文件可以适用于多个sdk,我们只需要嫁屉一个宏判断就可以了。
#ifdef APP_LAYER_SYSTEMINCLUDE_SYMBIAN
APP_LAYER_SYSTEMINCLUDE_SYMBIAN
#endif
这样,你的mmp文件既可以用于symbian^3也可以适用于其他版本的sdk了。
2、编译帮助文档失败
Sorry /epoc32/tools/cshlpcmp.bat is not supported in this release. Please use a different
device. Use 'devices' to view the available devices.
这是因为symbian^3的SDK中将编译帮助文档的模块给去掉了,我们只要从其他SDK版本中将相应的编译工具复制一份放在相应的目录下就可以了。
进入到SDK目录的/epoc32/tools目录下,复制cshlpcmp、perl、perlib三个文件夹到symbian^3的SDK的/epoc32/tools目录下,另外,复制rtf2ptml.exe、cshlpcmp.bat、cshlpcmp_gui.bat、cshlpcmp.jar、cshlpcmp.pl五个文件到/epoc32/tools目录下。再编译帮助文档就没问题了。
3、static library
这个网上有几个解决办法
1)将 armv5/udeb armv5/urel 里所有的东西拷贝到gcce/udeb gcce/urel
2)检测mmp中的staticlib 是否有没用到的,没用的或找不到的,删掉
如果你额应用中有静态库的话,还会遇到一个问题。
checklib: error: couldn't open file.
这是因为在编译GCC的版本的时候,系统会去armv的目录下找静态库,当然找不到了。我们只需要修改一下
cl_bpabi.pm这个文件,在/epoc32/tools目录下面。将
PrintList("/' ///n/t/'/./&Generic_Quote/(/"///$/(EPOCSTATLINK$Bl d/)/////$_/"/)" @StatLibList);
修改成
PrintList("/' ///n/t/'/./&Generic_Quote/(/"///$/(EPOCBSFSTATLINK $Bld/)//$_/"/)" @StatLibList);
位置大概在1068行左右
my $run_checklib = 0;
if (@StatLibList && $BasicTrgType =~ /^(EXE|DLL)$/o && !$SystemTrg && main::StdCppSupport())
就可以了
- s60 5版程序在symbian 3适配,升级,编译
- s60 5版程序在symbian 3适配,升级,编译
- 从S60 5th移植程序到Symbian^3
- 从S60 5th移植程序到Symbian^3
- [Symbian]在S60程序中实现动态曲线图
- 怎样在 S60 Qt 程序里调用 Symbian API
- Symbian S60 修改程序图标
- Symbian软件开发(3):运行S60 3rd FP1版控制台程序
- symbian S60开发:在S60 SDK 3rd FP1 上安装 MMF plugin 问题的解决方法
- symbian s60 删除模拟器上的程序
- 用Eclipse开发Symbian S60 J2ME程序
- Symbian S60 5版软件开发环境配置
- Symbian S60平台UCWEB6.3 Beta版发布啦
- S60 3版程序移植到5版的注意事项
- S60 3版程序移植到5版的注意事项
- Symbian S60 5th 切换程序UI方向为横屏或竖屏
- Symbian S60第三版软件精选介绍
- Symbian s60 第三版 SDK分类
- Android为Notification加上一个进度条
- message hook
- C# 读取搜索结果
- 关于android2.3 64位和32位系统编译
- Android 如何设置 Notification 中PendingIntent 的 Intent
- s60 5版程序在symbian 3适配,升级,编译
- Java设计模式之Visitor
- CopyOnWriteArrayList实现原理
- 文字字符串长度截取
- TCP可靠传输的实现
- LINQ to XML 实战
- 字符串常量与字符串变量
- SQL 左外连接,右外连接,全连接,内连接
- find 命令实践