首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Ubuntu下嵌入式Qt开发环境配置全攻略

Ubuntu下嵌入式Qt开发环境配置全攻略

本文以友善之臂的Mini6410嵌入式开发板为目标板,介绍ubuntu 12.04系统下,配置嵌入式Qt开发工具的过程。本文中介绍的工具、大部分步骤和脚本来自开发板附带资料光盘,但其默认配置环境为老旧的Fedora 9.0,在ubuntu中配置过程已需要修正。
一、背景

    众所周知Qt是一个跨平台的开发工具,与本文相关的分支有3个,分别是Linux下的Qt桌面版(基于X Window),嵌入式桌面环境QtopiaQt Extended)和嵌入式基础类库Qt Embedded

    嵌入式桌面版拥有集成开发工具Qt Creator,方便进行Qt程序的设计,默认配置用于开发桌面程序,进行交叉编译设置(有时间待后文详述)后,可以直接编译嵌入式程序。

        Qt Embedded也称Qt/E,是运行于嵌入式LinuxQt基础类库,目前最高版本为4.8(不确定)。它的图形界面直接工作于Frame Buffer上,绕过了窗口管理系统,具有较高的效率,适于嵌入式环境。


Qtopia
是一个嵌入式桌面环境,以Qt Embedded(在某些版本中称Qtopia Core)为基础,在后期改名为Qt Extended。它提拥有一个桌面,并供了手机/PDA中常用的基本功能软件(如电话本等等),在4.4.3后官方停止开发(或改由开源社区维护)。


不同的开发目标应当选择不同的开发工具和环境,如果读者不开发桌面程序,也不需要
Qt Creator(自己写makefile),可以不用安装桌面版,但装上对后续配置还是有一定方便作用的。

    对嵌入式开发者来说,如果仅仅开发单独的图形界面程序,不需要嵌入式桌面的话,只使用Qt/E即可,没必要使用过时的Qtopia


友善之臂开发板默认的
Qtopia环境是2.2,已经与4.xQt/E库不兼容,除了演示自带程序外,对开发而言几乎不堪用。开发板还提供了Qt Extended 4.4.3,但这个环境提供的是一个诺基亚功能机的界面,基本上也只能供学习研究使用了。所以建议读者,如果不是有直接针对Qtopia的开发需求,学习内容以Qt/E为主比较好,嵌入式桌面开发,不如交给Android去做。


同样是开发图形界面程序,
QtAndroid两种工具各有千秋。Android的优点是界面比较适合手机等移动终端的操作习惯,虚拟机对底层环境隔离比较充分,程序开发运行不用考虑各种不同的硬件和操作系统版本,不需要麻烦的配置,同时对Android原生支持的硬件(比如GPS)开发也比较容易。对一般应用程序开发而言,Android省力省心。但Android体积比较庞大,对系统要求较高,不少低端开发板跑起来非常吃力。Qt则正好相反,图形界面倾向于PC风格,与操作系统结合比较紧密,方便访问和管理众多设备,对系统要求较低。比如读写串口在Qt中轻而易举,使用Android开发就要用NDK库辅助,配置开发反而相当艰深。所以可以说Android是面向特殊的嵌入式环境——手机的专业快速开发工具,而Qt则是面向一般(复杂)嵌入式环境的通用工具。如果开发中不大与硬件打交道,可能Android更合适,反之不如选择Qt


附带说一句,现在
Qt也有了for Android的版本,不过笔者以它适用于两类人:一类是拥有大把Qt代码想在Android环境中用,另一类是想用Android但不会也不想学JavaAndroid API。如果不是上述两类,笔者以为就基本上没必要研究这种非驴非马的东西。


继承事业,薪火相传
返回列表