Qt for Symbian应用的开发-转载

简介:  Qt for Symbian应用的开发 本文翻译自 Development of Qt for Symbian Based Applications Qt Creator 1.3就以Qt 为Symbian平台开发应用提供初步支持。
 

Qt for Symbian应用的开发

本文翻译自 Development of Qt for Symbian Based Applications

Qt Creator 1.3就以Qt 为Symbian平台开发应用提供初步支持。 请注意,该版本具高度实验性质,并不以生产开发为目标。初始目标是让Symbian开发伙伴们熟悉Qt Creator,并向我们提供反馈意见以便我们改进未来版本的Qt Creator。 请使用Qt Creator开发维基百科上的邮件列表或IRC向我们提供反馈意见。

Symbian应用入门

你需要在PC上安装下列软件。仅支持Windows开发。

  • S60 Platform SDK 3rd Edition FP1或更高版本
  • Open C/C++ v1.6.0 或更高版本(请将其安装到你将使用Qt的所有S60 SDKs中。已被包括在Qt for Symbian二进制安装包中。)
  • 已包括在S60 Platform SDKs中的GCCE ARM工具链或RVCT 2.2 [build 686]或其更新版本(非免费)(你的环境需要在PATH中找得到这个编译器。)
  • Qt for Symbian 4.6.0,安装到你希望使用的S60SDKs中

为在终端上部署及运行应用,你需要下面这些资源:

  • 诺基亚USB驱动器,如PC套件随附
  • 针对你的终端的App TRK应用

欲在真机上运行Qt应用需要先在你的终端上安装如下一些软件包。可以到你所安装的Open C/C++的S60 SDK中找到这些软件包:

  • nokia_plugin\openc\s60opencsis\pips_s60_<version>.sis
  • nokia_plugin\openc\s60opencsis\openc_ssl_s60_<version>.sis
  • nokia_plugin\opencpp\s60opencppsis\stdcpp_s60_<version>.sis

如果你希望在Symbian模拟器中运行应用,你还需要安装Carbide.c++ v2.0.0或更高版本。

设置Qt Creator

安装好S60 Platform SDK 和Qt for Symbian之后你就可以运行Qt Creator了,此时它会自动检测已安装的SDKs及所对应的Qt版本。对于所检测到的每一个对应Qt的S60 SDK,在Qt的版本管理设置中的Tools > Options... > Qt4 > Qt Versions中都会产生一个特定项。 请注意,如果你手工添加一项针对Symbian的Qt版本,你也必须手工指定针对此版本所使用的S60 SDK。

如果你希望在Symbian模拟器中运行自己的应用,你需要将Qt Creator指向你想使用的Metrowerks编译器,方法是将Qt版本的Carbide目录设置到对应的Carbide.c++目录。 你可以在Tools > Options... > Qt4 > S60 SDKs的收藏页中查看有哪些S60 SDKs及其对应的Qt版本。

构建工程

安装好所有东西并检查了前文所述的Qt Creator配置后,你可以建立你的工程了。请注意:Qt Creator中唯一支持Qt for Symbian应用的编译系统是qmake

在为Symbian平台构建工程之前,你需要先为其创建构建配置。请打开Projects mode(工程模式)确保已选中 你的工程,以便在Edit Project Settings for Project....(针对工程....编辑工程设置)中进行编 辑。在该构建配置的Add(添加)菜单中通过选择对应的Qt版本来添加分别针对调试及针对发行的构建配置。

所创建的构建配置默认使用GCCE工具链。如果你希望使用RVCT来为目标终端进行构建,或者希望使用WINSCW来针对Symbian模 拟器进行构建,请选择Show Details并在构建配置设置菜单的General分区中改换工具链。

现在你可以在Projects mode的上部将新设的构建配置之一选为活动配置,转而去为终端构建自己的工程。

运行工程

在模拟器中运行

类似于针对你的工程的构建配置设置,你需要创建一个运行配置,以便在Symbian模拟器中运行你的工程:

  1. 切换到Projects mode
  2. Run Settings > Add > 中选择"你的应用"in Symbian Emulator

为在模拟器中启动工程,请在Projects mode窗口上部将这个运行配置选为活动配置,然后按run(运行)按钮。

在终端中运行你的工程

为在某台Symbian真机上运行你的工程,请通过Run Settings > Add > 你的应用on Symbian终端在Projects mode中再添加一个运行配置。


在展开的运行配置中你可以指定可使用的证书,并选择一台目前已连接到电脑的终端。目前支持的连接模式仅有PC套件模式中的USB。为在终端上实际运行应 用,你需要在Projects mode上部将该终端运行配置设为活动配置。启动终端上的App TRK应用,按run(运 行)按钮为应用创建一个包,以便在终端上自动部署、安装,并运行。

故障解决

如发现问题,请检查:

  • 你是否以Qt for Symbian的某个版本构建应用?
  • 你用来编译工程的Qt版本其设置是否正确无误?请检查S60 SDK的路径。同时请检查是否需要对编译工具链指定路径。
  • 是否已将模拟器/终端运行配置选为活动运行配置?
  • 你是否使用正确的工具链进行编译,即模拟器上运行的WINSCW、终端上运行的GCCE 或RVCT?
  • 如果模拟器进程无法启动,请关闭Qt Creator然后从文件管理器直接启动应用。这样做之后,Qt Creator就应该能在模拟器中运行你的工程了。
  • 终端是否通过PC套件模式的USB连接了?
  • 终端中是否运行了App TRK,是否使用了USB连接,状态是否为"已连接"?
  • 运行配置展开信息中,是否能看到你的终端,该终端是否被选中?
目录
相关文章
|
1月前
|
网络协议 C++
C++ Qt开发:QTcpSocket网络通信组件
`QTcpSocket`和`QTcpServer`是Qt中用于实现基于TCP(Transmission Control Protocol)通信的两个关键类。TCP是一种面向连接的协议,它提供可靠的、双向的、面向字节流的通信。这两个类允许Qt应用程序在网络上建立客户端和服务器之间的连接。Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍如何运用`QTcpSocket`组件实现基于TCP的网络通信功能。
38 8
C++ Qt开发:QTcpSocket网络通信组件
|
3月前
|
SQL 数据库 C++
C++ Qt开发:Charts与数据库组件联动
Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍`Charts`组件与`QSql`数据库组件的常用方法及灵活运用。在之前的文章中详细介绍了关于`QCharts`绘图组件的使用方式,本章将继续延续这个知识点,通过使用`QSql`数据库模块动态的读取某一个时间节点上的数据,当用户点击查询数据时则动态的输出该事件节点的所有数据,并将数据绘制到图形组件内,实现动态查询图形的功能。
34 0
C++ Qt开发:Charts与数据库组件联动
|
4月前
|
存储 SQL 数据库
C++ Qt开发:数据库与TableView多组件联动
在Qt中,通常我们不会在`TableView`等组件中保存数据,一般会将这些数据存储至数据库或者是文件中保存,当使用时则动态的在数据库中调出来,以下案例将实现,当用户点击并选中`TableView`组件内的某一行时,我们通过该行中的`name`字段查询,并将查询结果关联到`ListView`组件内,同时将`TableView`中选中行的字段分别显示在窗体底部的`LineEdit`编辑框内。Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍`TableView`
42 1
C++ Qt开发:数据库与TableView多组件联动
|
4月前
|
存储 C++ 索引
C++ Qt开发:TableView与TreeView组件联动
Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍`TableView`与`TreeView`组件联动的常用方法及灵活运用。 本章我们继续实现表格的联动效果,当读者点击`TableView`或`TreeView`中的某一行时,我们让其实现自动跟随功能,且当用户修改行中特定数据时也让其动态的跟随改变,首先绘制一个主界面如图,分别放置两个组件框,底部保留两个按钮,按钮1用于该表表格的行列个数,按钮2则用于设置`TableView`表格表头参数,整个表格我们将其设
36 0
C++ Qt开发:TableView与TreeView组件联动
|
16天前
|
图形学 Python 容器
【PyQt5桌面应用开发】3.Qt Designer快速入门(控件详解)
【PyQt5桌面应用开发】3.Qt Designer快速入门(控件详解)
35 0
|
24天前
qt开发使用camera类获取摄像头信息并拍照保存
qt开发使用camera类获取摄像头信息并拍照保存
|
1月前
|
监控 C++
C++ Qt开发:QProcess进程管理模块
Qt是一个跨平台的C++图形库,简化了窗体应用开发,支持通过拖放组件提升效率。本章节关注`QProcess`组件,它用于控制和管理进程,例如执行命令、运行可执行文件及与外部进程通信。`QProcess`提供多种方法如`start`、`waitForStarted`和`waitForFinished`等,实现启动、监控和交互。示例展示了如何使用`QProcess`获取系统进程和信息,通过`tasklist`和`systeminfo`命令,并将结果展示在`QTreeWidget`中。
28 0
C++ Qt开发:QProcess进程管理模块
|
1月前
|
存储 C++ 网络架构
C++ Qt开发:QUdpSocket实现组播通信
Qt教程:使用`QUdpSocket`实现UDP组播通信。通过设置套接字选项、绑定端口、加入和离开组播组,以及发送和接收数据报,简化跨平台窗体应用开发。关键函数包括`setSocketOption`设置多播TTL,`bind`绑定地址和端口,`joinMulticastGroup`加入组播,`leaveMulticastGroup`退出,`writeDatagram`发送,和`readDatagram`接收数据报。
24 1
C++ Qt开发:QUdpSocket实现组播通信
|
1月前
|
存储 网络安全 C++
C++ Qt开发:QUdpSocket网络通信组件
Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍如何运用`QUdpSocket`组件实现基于UDP的网络通信功能。与`QTcpSocket`组件功能类似,`QUdpSocket`组件是 Qt 中用于实现用户数据报协议(UDP,User Datagram Protocol)通信的类。UDP 是一种无连接的、不可靠的数据传输协议,它不保证数据包的顺序和可靠性,但具有低延迟和简单的特点。
20 0
C++ Qt开发:QUdpSocket网络通信组件
|
1月前
|
数据可视化 数据库 C++
Qt 5.14.2揭秘高效开发:如何用VS2022快速部署Qt 5.14.2,打造无与伦比的Windows应用
Qt 5.14.2揭秘高效开发:如何用VS2022快速部署Qt 5.14.2,打造无与伦比的Windows应用

热门文章

最新文章

推荐镜像

更多