×
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.
201 page views in the last 30 days.
×