文档章节

Qt/Qte/Qtopia三者的区别

水海云
 水海云
发布于 2013/03/18 20:47
字数 719
阅读 3853
收藏 6

Qt

泛指 Qt software的所有版本的图像界面库,包括 Qt/X11(Unix/Linux),Qt Windows, Qt Mac 等,但这只是相对于二进制来说的。Qt作为一个跨平台的GUI 框架,在源码上对所有平台都是一致的。Unix/Linux上最流行的桌面环境之一KDE就是采用Qt来写的。

Nokia 在2008年收购 Trolltech 后,将 Qt 更名为 Qt Software,随后改为 Qt Development Frameworks。而后 Nokia 开发了 IDE 工具 Qt Creator,于是Qt FrameWork + Qt Creator = Qt SDK。

Qte:Qt/Embeded for linux

它是用于嵌入式 Linux 系统的 Qt 版本,也是一套界面库,Qt/Embeded 也简称 Qte 或 Qt/E,Qte 去掉了 X Lib 的依赖而直接工作在 Framebuffer 上,而且Qte在此基础上实现了自己的窗口管理系统QWS(Qt Windows System),这是Qte与Qt/X11最大的区别。因此Qte可以在嵌入式Linux系统中没有X11库的环境下构建独立的图形用户界面,而且不会占用太多的嵌入式系统资源。

Qte为方便嵌入式Qt应用的开发,还提供qvfb工具和makeqpf工具。qvfb工具可以实现Qte的应用能在PC上进行调试和测试,避开X11库的干扰。makeqpf工具则是用来制作qpf字体文件,用来在嵌入式界面中显示特殊渲染字体。

Qtopia

Qtopia 是一个基于 Qte 的类似桌面系统的应用环境,同时又为开发者为嵌入式设备编写程序提供了一套面向对象的API,包含有 PDA 版本和 Phone 版本。请注意是基于Qte 的应用环境,Qtopia 是用 Qte 这个库开发出来的应用程序,实际上Qtopia就相当于是嵌入式设备上的桌面环境,也就是类似于PC上的KDE,提供有自己的窗口管理、控制等GUI接口,简化了其上Qte应用的开发。就算不使用Qtopia也可以使用Qte创建自己的图形界面。

Qtopia早期是一个sf.net上的开源项目,构建于Qte之上。从Qt4.1开始,Qt/Embedded改名为Qtopia Core,又从Qt4.4.1开始,Qtopia Core又改名为Qt for Embedded Linux,就是现在的Qte(eveywhere)。

Qtopia Platform

Qtopia平台由Qt/E, libqpe, libqtopia1, qtopiapim这些库和Qtopia server/launcher组成。应用开发者通过使用这些库提供的API来为Qtopia设备开发应用程序。Qtopia server/launcher作为主程序负责窗口系统的控制、进程间的通讯、启动所有的应用及其它的任务。

Qtopia/Qte的版本

  • Qtopia1.7.0 / Qte 2.3.7
  • Qtopia2.1.1 / Qte 2.3.10
  • Qtopia2.1.2 / Qte 2.3.11
  • Qtopia2.2.0 / Qte 2.3.12 (包含在qtopia2.2源码包中,2005年,最后一个免费的版本)

qtopia 2的应用基于qte 2.3.x的,qtopia 4的应用基于qtopia core(相当于原来的qte) 4.x。

© 著作权归作者所有

共有 人打赏支持
水海云
粉丝 50
博文 120
码字总数 101938
作品 0
深圳
程序员
私信 提问
加载中

评论(1)

水海云
水海云
Qtopia之前的名称:Qt Platform Environment,简称QPE。
嵌入式Qt方案中文显示系列:Qte中的字体支持和使用

前话:工作以来在项目中主要的开发工作都是用嵌入式QT开发界面,从一开始的从零摸索,到现在有点头绪和经验,很多东西和用法依然只是知其然,不知其所以然,甚至一些还仅仅是模仿阶段。在这期...

水海云
2013/04/01
0
0
Qt/Embedded for Linux 应用开发案例

一、开发环境的构建 1.下载Qt源代码,包括桌面版和嵌入式版 如4.7.4版:qt-everywhere-opensource-src-4.7.4.tar.gz qt-everywhere-opensource-src-4.7.4[embedded].tar.gz 解压缩到当前目录...

水海云
2012/04/21
0
0
qt4.8.2在tq2440开发板上的移植(一)--编译和安装

主机版本:ubuntu11.04 交叉编译器版本:4.3.3 移植的主要工作就是编译在ARM板上运行的qt库,并且把这些库做到根目录中。 需要的文件tslib-1.4.tar.gz qt-everywhere-opensource-src-4.8.2.t...

乐学为上
2012/06/11
0
0
嵌入式linux上QT标准键盘输入的实现

来自:http://www.embedu.org/Column/Column251.htm 在嵌入式平台上运行QTE时,使用的键盘通常不是标准键盘,而是嵌入式设备外扩的普通按键。那么实现QTE键盘输入的方法大体上可以分为两类:...

长平狐
2012/06/12
346
0
Qt Embedded 键盘驱动分析(上)

为了保持QtEmbedded对硬件最小化的依赖程度,QtEmbedded所有硬件相关的操作都采用插件的封装形式,并且大部分功能都可以从程序外部运用环境变量的方式来配置。这样一来我们只要针对不同的硬件...

水海云
2013/04/16
0
1

没有更多内容

加载失败,请刷新页面

加载更多

[LintCode] Serialize and Deserialize Binary Tree(二叉树的序列化和反序列化)

描述 设计一个算法,并编写代码来序列化和反序列化二叉树。将树写入一个文件被称为“序列化”,读取文件后重建同样的二叉树被称为“反序列化”。 如何反序列化或序列化二叉树是没有限制的,你...

honeymose
16分钟前
0
0
java框架学习日志-7(静态代理和JDK代理)

静态代理 我们平时去餐厅吃饭,不是直接告诉厨师做什么菜的,而是先告诉服务员点什么菜,然后由服务员传到给厨师,相当于服务员是厨师的代理,我们通过代理让厨师炒菜,这就是代理模式。代理...

白话
今天
22
0
Flink Window

1.Flink窗口 Window Assigner分配器。 窗口可以是时间驱动的(Time Window,例如:每30秒钟),也可以是数据驱动的(Count Window,例如:每一百个元素)。 一种经典的窗口分类可以分成: 翻...

满小茂
今天
17
0
my.ini

1

architect刘源源
今天
15
0
docker dns

There is a opensource application that solves this issue, it's called DNS Proxy Server It's a DNS server that solves containers hostnames, if could not found a hostname that mat......

kut
今天
15
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部