×
Namespaces

Variants
Actions

Qt4.6.2 目前存在的问题

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

兼容于
平台:
Symbian

文章
翻译:
翻译自: Qt462KnownIssues
最后由 hamishwillee 在 30 Apr 2013 编辑


本文列出Qt-4.6.2中存在的一些已知问题,方便各开发者查阅。


Contents

编译

  • 无法使用GCCE编译Qt库。
  • 在RVCT中引入头文件不能使用#include <QtTest>这种形式,必须使用#include<QtTest/QtTest>这种形式。
  • 利用qmake命令产生的Makefile,需要GNU make来执行,Symbian SDKs中的make.exe能够满足需要。如果你调用了不兼容GNU Make的make.exe程序(比如,ARM RVCT 中的make.exe),那么可能无法正确使用Makefile。
  • The wrapper makefiles created by qmake may cause conflicts with raptor’s make engine, the workaround is to run sbs directly or to use a GNU make with a different exe name (e.g. mingw32-make.exe) to run the wrapper makefiles.

Symbian 模拟器

  • 不支持在模拟器中同时启动多个应用。启动第二个应用的时候会返回KErrNotSupported(-5)。
  • The Emulator (32-bit Windows application) is limited to 2GB address space. Mwccsym2 links the debug symbols into the executable creating big chunks of memory, this causes a situation where even a small chunk of linear memory is too much to fit into the memory causing application/emulator just bails out without any error note. Error is easy to spot if the executable dies before reaching main() and you have just increased epocheapsize maximum in .pro file.
  • 在S60 3rd fp1版本中,如果修改了 MegabytesofFreeMemory设置,将会导致模拟器启动时崩溃。 start up.

手机安装

  • 如果手机里已有旧的版本在安装Qt.sis时可能会失败。请先删除手机中的技术预览版,然后重新安装。
  • 如果将Qt库安装在外部存储卡上,由于Symbian会对外部存储卡上的库文件做额外的检查,启动Qt应用将会变得很慢。所以Qt库只能装在手机存储器中(C:盘)。
  • 供手机安装的Qt.sis二进制代码指令集是armv6的,像N96等不支持armv6的手机无法运行Qt应用。

通用问题(QtCore and QtGui)

  • 某些widget可能会超出屏幕之外,即使你调用的是widget.showFullScreen()。
  • 长时间运行高CPU负荷的应用,可能会导致程序启动管理器进程(比如应用列表菜单)崩溃和ViewSrv应用终止。
  • QLocal和QDesktopServices在S60 3rd fp1版本中工作不正常。
  • QFileSystemModel sometimes creates duplicate nodes for files and directories if the file name and path case doesn’t match exactly the case of the file name in the file system.
  • 对于垂直和非常大的字体渲染还没有达到呈现最佳状态。
  • Qt应用帮助中的"About Qt"对话框太大并且无法滚动,因此在S60无法匹配屏幕正常显示。
  • 在每一次socket连接网络的时候都会弹出IAP(因特网访问接入点)选择框。如果不想重复选择,你可以参考examples里的FTP或Anomaly,这俩程序演示了如何使用默认连接。
  • 在鼠标压住拖动到时候,有时无法把鼠标事件发送给正确的接收者。
  • Using virtual keyboard to edit QLineEdit that has input mask only works properly if masked characters are filled in order starting from the beginning of the string.
  • 利用虚拟键盘在QLineEdit的隐藏模式输入字符时,只有在隐藏所有字符时才能工作正常(不能只隐藏部分字符)。
  • 在最上层窗口(top window)调用QWidget::lower()时会将整个应用放到后台,将来很有可能会为每个最上层窗口引入窗口组来解决这个问题。不过这种方案会影响到任务切换,每个最上层窗口会被视为一个独立的任务。
  • 对某些Qt Demo应用,在s60 3.x系统如n95上切换屏幕的显示方向可能需要几秒钟的时间。

QtNetwork 相关问题

  • 网络应用需要networkservices能力,请在.pro文件中增加target.capability = networkservices
  • 网络例子程序在选取IAP(因特网访问接入点)并且长时等待“preshared key for WLAN”对话框情况下会导致崩溃(ViewSrv 11).
  • 网络例子程序会使用第一个IAP(因特网访问接入点)会导致某些连接问题(比如,在连接的时候MMS接入点正在工作中)

QtWebkit 相关问题

  • Webkit应用需要networkservices能力,请在.pro文件中增加target.capability = networkservices
  • 在.pro里增加target.epocheapsize 0x200000 0x2000000语句,将会为你的应用设置最小2MB,最大为32MB的堆大小。
  • 在模拟器中运行webkit应用大部分情况下需要增加内存空间,请修改%EPOCROOT%\epoc32\data\epoc.ini文件中的MegabytesOfFreeMemory选项
  • 用“-fpu vfpuv2”参数编译webkit在运行javascript代码时会导致随机崩溃(kern-exec 3)。
  • webcore.pro只能在命令行中编译,如果在Carbide中编译会导致内存耗尽错误。
  • QtWebkit在armv5中QtWebkit只能编译成release模式。编译成debug模式将会导致RVCT链接程序内存耗尽。

Bug 跟踪

  • 如果你想了解更多关于Qt-4.6.x的有关Bug报告,报告已经解决的或者尚未解决的,请访问The Bug Tracker
  • 这是一个公共的bug跟踪系统, 如果你发现有什么新的Bug,请点击“create new issue”链接进行报告link(需要是注册用户)。


相关链接: http://qt.gitorious.org/qt/pages/Qt462KnownIssues

This page was last modified on 30 April 2013, at 09:07.
243 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×