打开mini2440的Qtopia2.2应用程序开发的神秘面纱(x86+arm+源代码+多媒体影音解说)
经过两个多月来在网上的观察,发觉菜鸟们对于Qtopia2.2应用程序开发的步骤,
似乎仍然处于众说纷纭,一筹莫展的境况.
这点友善之臂应负上部分责任,既然选用了Qtopia2.2作为产品的应用平台,却又
只提供少得可憐的开发资料,连在mini2440手册上那个唯一的Qtopia hello例程也
是错误多多的,菜鸟们按照它来做,肯定碰钉子.
最可笑就是这些存在多时的错误,仍然原封不动地印在最新版的mini2440手册上
(20100108版).不知友善之臂是要作弄菜鸟们,还是要测试他们的IQ和EQ呢?
既然那个hello例程那么可恶,就讓小弟斗胆在这里班门弄斧,为菜鸟们设计一个全新的
hello例程,并且用录像片断方式,加上图文并茂,详细解说一下当中的来龙去脉,好使菜鸟们能跨
越这道入门的鸿沟,驰骋于Qtopia2.2美丽的世界里,开发出令人神往的应用程序,免于堕入移植
新版Qt的恶梦里.
醒来吧!雷梦娜..........讓我们一起走进Qtopia2.2的奇妙世界里吧....................
----------------------------------------------------------------------------------------------------------------------------
首先来看看小弟这两个x86及arm版hello程序运行时的界面,以便有个概略的认识:
x86 hello界面一:
x86 hello界面二:
x86 hello界面三:
x86 hello界面四:
----------------------------------------------------------------------------------------------------------------------------
开发板 hello界面一:
开发板 hello界面二:
开发板 hello界面三:
开发板 hello界面四:
---------------------------------------------------------------------------------------------------------------------------
Qt designer界面:
----------------------------------------------------------------------------------------------------------------------------
另外,为达到更佳效果,小弟建议先到以下网站观看解说片段,以便对整个过程有个概略的认识,
然后再回来继续看帖子的其余解说内容.
以下片段讲解如何编译与运行x86版本hello程序的步骤:
http://v.youku.com/v_show/id_XMTQ2MjAzMzc2.html
以下片段讲解如何编译与运行Arm版本hello程序的步骤(用ftp + telnet方式):
http://v.youku.com/v_show/id_XMTQ2MjA0MTc2.html
以下片段讲解如何用Qt designer倉建hello程序的GUI步骤:
http://v.youku.com/v_show/id_XMTQ2MjA0NjUy.html
---------------------------------------------------------------------------------------------------------------------------
好了,相信各位对这个hello程序已有完整的概念,现在以截图的方式解说各档案的大概内容:
以下截图解说hello.pro内容:
以下截图解说hello.desktop内容:
以下截图解说main.cpp内容:
以下截图解说hello.cpp内容:
以下截图解说hello.h内容:
------------------------------------------------------------------------------------------------------------------------------
最后,还有如下几个重点大家要注意的:
1. 在开始编译小弟的hello程序前,请先按照mini2440手册上第五章及附录1的步骤,建立
好适当的交叉编译还境,并且把x86及arm版的Qtopia编译好.这些事情只需细心地按照
手册上的步骤进行便可,无须小弟多谈.
2. 另外,由于在Linux下,所有档案都是有权限设定的,若设定不当,会做成很多不必要的麻烦,小
弟的做法一般都是把所有相关程序的权限设为777,这样一来便可一劳永逸了.
顺带一提,在下的Linux是Fedora 10独立安装的版本,并非友善建议的安装在VMware下
的Fedora 9版本.
3. 开发Qtopia应用程序和开发一般的Qt应用程序是有些不同的,不要将开发Qt应用程序
的模式硬套用在Qtopia上,否则会有麻烦,而且得出来的界面风格与Qtopia格格不入,
有点古怪.
4. 不需要用progen来产生.pro档,只需用在下提供的版本,按自身需要,略为更改便可.
5. 不建议自行编写代码来产生GUI界面,用友善提供的那个版本Qt designer已可轻易
的倉建常用的界面.
6. 不要自行用uic来把*.ui档转化为*.cpp及*.h档,这件事情会在运行build脚本时自动完成,
只不过转化出来的*.cpp及*.h档,是储存在一个hidden folder内(用ls -a便可看见).
不要更改这些档案来实行程序所需的功能,正确的做法是自行编写一个子类来继承由
Qt designer设计的那个Form,这样一来便可调用其上的所有控件.这点是整个开发过程
的重点所在.
7. 在/opt/Qtopia/pics的folder内,有非常多的图标,选择一个合用的,然后在.pro及.desktop
档内加上指定图标的路径及名称,便可在模拟器及开发板上产生应用程序的图标.(看看小弟提
供的档案便清楚了)
8. 还有一个经常令菜鸟疑惑的事情,就是编译完后,那个执行档不知去了那里?其实有两个方法
可以控制执行档的去向,可在.pro档内加上DESTDIR=所需路径,也可在build脚本加上
make install INSTALL_ROOT=所需路径.(看看小弟提供的档案便清楚了)
9. 最后还有一点要注意,由于这个hello程序需要显示图片,在编译前,请先更改hello.cpp档内
有关图片的路径.因为小弟选用的路径跟大家的实际环境有别.
-------------------------------------------------------------------------------------------------------------------------
希望这个帖子的内容能为大家解开对Qtopia2.2应用程序开发的一些疑惑,对于更进一步的
应用,则要靠大家自行花点时间去研究了.
在此谨祝各位马到功成.
再会
很好啊,总算找到结果了,谢谢
有的图片怎么看不到啊