刚开始在ARM平台开发QT时,花了很长时间来理解开发步骤和开发模式,其实理解了后,QT用起来真的很方便,呵呵。。。
开发过程中,有几点要注意的:
(1)获取交叉工具链,这个可以从http://www.mentor.com/上下载,获得交叉工具链后要进行必要的设置。注意工具链的版本很多,不同的版本来编译QT时可能会有出错或不稳定的情况出现,一般交叉工具链的版本最好要比QT版本高。交叉工具链一般直接解压就可以用了,解压后,注意修改下/etc/profile这个文件,把工具链的工具路径加到环境变量里。实际上等下对QT源码的编译和对qt应用程序的编译主要是要用到这个工具链里的:arm-linux-g++。
(2)获得QT源代码,注意这里我们获得源代码的目的是为了编译出QT库跟QT开发的一些工具,这些工具主要是qmake跟moc,uic以及rcc等。
(3)QT源码有两种类型,一种为包含了Qtopia的,另一种是只有有QT核心的,我们如不需要使用qtopia这个系统的话,编译QT的核心库即可。QT的核心库也有好个版本,什么QT3,QT4等,这个库可以再http://qt.nokia.com/这里下到,我们拿到嵌入式版本的就可以了。
(4)拿到QT的源码后,第一件事就是对其进行配置,配置的选项可以参考源码里提供的help(不要到处乱找资料,就看这个help就可以了!),进入源码后,使用configure --help可以对配置选项进行查看。注意对安装(好像是profex)路径进行配置,因为等下使用QT的库进行应用程序的开发时,编译程序时若使用到了动态链接库,则这个链接库的路径是会编译进程序的,那么这个程序放到arm的板子上运行时,动态链接库的路径应该跟编译程序的PC机上的路径一样(好像配置环境变量后这个可以不做要求),这样才应用程序才能顺利找到链接库。
(5)注意QT的应用程序开发模式有几种,会使用到几个工具,qmake -project,qmake,make这几个肯定要用,qmake -project 是用来生产工程文件,qmake用来生成makefile,注意在使用qmake -project时,qmake会自动的去查看这个工程文件夹下有没有.ui的文件,若有则会自动调用uic工具,若工程里有用到槽或信号,则会自动调用moc工具,注意若使用到一些特点函数库,可能需要在生产的工程文件里手动添加这个库,比如使用到了网络,则在工程文件里要手动添加:QT += network。
(6)若使用QT designer进行开发,在pc上运行成功后,我们只需要把文件放到linux平台上进行交叉编译即可。
(7)在开发过程中,最好的参考资料就是源码本身自带的帮助文档以及官方网站上的使用说明。