网络安全参考 | UNIX参考 | GPS参考 | 无线参考 | 在线手册 | OSBUG.ORG | SUNNY-NETWORK.COM
天线制作 GPS 地标
网站地图 RSS订阅
高级搜索 收藏本站
Home | 业界动态 | Open source | GNU | Linux | BSD | Solaris | AIX | HP-UX | IRIX | Mac OS X | Minix | Tru64 | SCO UNIX | Network | Security | X-Window | Database | 应用服务 | Programming | 经典著作 | 永远的纪念 | 杂项
 当前位置: Home > Linux > 嵌入式系统 > GUI > 文章  
基于Qt/Embedded和Qtopia的GUI设计
文章来源: http://www.mct.com.cn 文章作者: 王丽洁 习勇 魏急波 发布时间: 2007-03-02   字体: [ ]  
 

  Qt/Embedded是Qt的面向嵌入式应用的简化版本,它包括一组完备的GUI类、操作系统封装、数据结构类、功能类和组合类。大部分Qt的应用程序可以经过简单的编译与重设窗口大小移植到Qt/Embedded。

  Qtopia是基于QT/Embedded开发的一个嵌入式的窗口系统和应用程序集,如地址本、图像浏览、Media播放器等,还包括娱乐和配置工具,广泛用于PDA等掌上设备。Qtopia平台由Qtopia 库(Qt/E,libqpe,libqtopia1,qtopiapim)和Qtopia server/laucher组成。Qtopia server/laucher是控制窗口系统、进程间通信、发起所有应用和其他核心任务的主要服务程序。

  (2) Qt/Embedded和Qtopia的交叉编译与运行

  整个GUI系统的构建需要对Qt/Embedded、Qtopia依次分别编链,然后有机地整合在一起。Qt/Embedded为Qtopia提供了底层支持,GUI系统的图形库窗口组建都由Qt/Embedded实现。

  在构建GUI时用于Qt开发的典型工具如下:

  • tmake:跨平台的Makefile生成器。
  • moc:用于Qt C++扩展的metra-object编译器。
  • uic:从XML文件生成代码的用户界面编译器。
  • designer:用于设计窗口组建的应用程序。

  Qtopia的开发工具包SDK(Software Development Kit)是Qtopia开发环境的核心部分,编译后得到创建应用程序所需的软件包如下:

  • qvfb(virtual frame buffer):X窗口用来运行和测试Qtopia应用程序的系统程序。
  • qpe(Qtopia executable):用来处理所有的用户程序界面[2,5]。

  由于我们使用的是ARM CPU,因此需要对Qt/Embedded和Qtopia开发工具包进行交叉编译。本文使用arm-linux-gcc-3.3.2来建立交叉编译环境。为了对Qt/Embedded和Qtopia进行交叉编译,需要使用如下的源码树:

  • tmake-1.13.tar.gz:用来得到tmake工具。
  • qt-embedded-2.3.7.tar.gz:Qt的嵌入式版本。
  • qt-x11-2.3.2.tar.gz:Qt的X11版本。
  • qtopia-free-1.7.0.tar.gz:官方网站提供的Qtopia免费版。
  • e2fsprogs-1.38.tar.gz:为了得到qtopia所需的uuid.h和libuuid.so。

  假设将上述源码树放在同一目录下,例如:/root/qtopia,并依次解压,然后进行编译,步骤如下:

  ①设定tmake的环境变量如下:

export TMAKEPATH=/root/qtopia/tmake-1.13/lib/qws/linux-arm-g++

  此处指定了tmake在生成Makefile时使用arm交叉编译。

  ②编译qt-x11,其目的是生成moc、uic、qvfb、designer,并将它们放在qt-embedded\bin目录下。

  ③配置qt-embedded编译选项,命令为:

./configure -platform linux-arm-g++  -qconfig qpe -qvfb -depths 4,8,16,32.

  此处-platform linux-arm-g++表示在arm平台上进行交叉编译;-qconfig local表示使用src/tools/qconfig-local.h;-depths 4,8,16,32表示需要qt支持的显示颜色深度。

  ④使用make命令编译qt-embedded,用来生成Qt库(libqte.so)。

  ⑤配置并交叉编译Qtopia,生成应用程序以及桌面环境。

 
推荐文章
·恰当选择嵌入式Linux环境下的GUI
·嵌入式Linux系统的MiniGUI研究和
·基于 GTK+ 和 X-window 的 GUI
·恰当选择嵌入式Linux环境下的GUI
·嵌入式Linux系统中的GUI系统的研
·QTE/Qtopia在Liod-270上的移植
·基于Qt/Embedded的GUI移植及应用
 

 
↑返回顶部   打印本页   关闭窗口↓  

Google
 
Web oldhand.org unixreference.net meshmea.org
相关分类
热点文章
·基于Qt/Embedded的GUI移
·嵌入式Linux系统中的GUI
·QTE/Qtopia在Liod-270上
·Qt/Embedded在嵌入式Lin
·基于 GTK+ 和 X-window
·嵌入式Linux系统的MiniG
·恰当选择嵌入式Linux环
·恰当选择嵌入式Linux环
相关文章
·主流嵌入式Linux系统下G
·基于 GTK+ 和 X-window
·嵌入式uClinux的内核结
·制作基于软盘的Linux系
·基于Linux的移动电话开
·Linux下ARM/DSP双核系统
·嵌入式Linux系统的MiniG
·恰当选择嵌入式Linux环
更多...
 
 

Copyright(c) 2001-2009 OLDHAND ORGANIZATION, All Rights reserved.
Power by DedeCms 织梦内容管理系统