caiyuxia0 2014-02-09
环境:
Ubuntu10.04
arm linux OS: 3.0.1
arm上 qt-4.7.1
g++ / gcc 4.4.3
arm-linux-g++ / arm-linux-gcc 4.3.2
特别标注:
有些网站转载我的文章不标明出处,并且转载不到位,没有把相应的链接一块转过去,比如说下载链接或相关文献的链接等,导致一些网友阅读和使用出现障碍和知识的不连续,所以在此特别标注:我的这篇文章发表在CSDN博客上,可以到CSDN博客来阅读。
正题:
由于没接触过ARM,linux也只懂些皮毛而已,但现在开发需要,没办法,只能接触这块硬骨头。
之前买了块OK6410开发板,由于里面学习资料有限,研究了好长时间还是不明就理,什么QT、QT4.**、QTOpia2.**、QTOpia4.**、QTEmbedded、QTDesigner、QTCreator...... 一大堆的QT,不知道这些有什么关联,复杂,搞不懂呀。
接触之前就知道这是块难啃的骨头。
但我的主题只有一个,就是我写的程序能在Linux ARM上能够运行,
由此我就要有一个开发用的IDE,IDE编译出来的程序能够在ARM上运行;
IDE要选那个呢?有文章说用QTDesinger,有说用QTCreator等等。
经过资料查询,其实QTDesinger和QTCreator都可以,QTCreator更类似于我常用的VC++ IDE;
OK6410 Linux版本里面又两个图像界面,一个是QTOpia2界面,一个是QT4界面。
平常都在写VC程序,所以更喜欢QTCreator(其实QTDesinger包含于QTCreator)
以上就是我对众多QT的一点皮毛理解,可能有误,但对于现在的我来说已经是一大越进。
下面就重点来讲讲QTCreator + QTEmbedded 在Ubuntu上创建嵌入式ARM开发环境
首先得装载在ubuntu上装载arm编译器:arm-linux-gcc,arm-linux-g++ (如何安装网上资料很多,OK6410随带的资料里面也有)
接着用ubuntu编译QT4.7.1(也就是QTEmbedded),它的源码名称是:qt-everywhere-opensource-src-4.7.1.tar.gz
解压编译之后如下图所示:(注:QtEmbedded-4.7.1-arm这个名称是后来更改的,原名称是解压包的名称)
接着进入 bin 文件夹,把qmake名称改为qmake-arm (以便区别,不改也可以)
下来就在Ubuntu上安装QTCreator,直接在ubuntu的“新立得软件包管理器“搜索安装即可。
接着运行QTCreator编写一个简单的程序
在PC端运行成功之后(如下图)
就可以进行arm端程序的编译了
把QTCreator创建的应用程序编译成ARM版本很容易,用嵌入式ARM版的QT4的qmake(即刚才改名成qmake-arm的qmake)工具创建Makefile文件,然后make就可以了。
进入到工程文件夹里面
运行qmake-arm命令:
此时将生存Makefile文件
从Makefile文件的内容我们可以看出,编译器已经采用了arm-linux-gcc 或 arm-linux-g++,这样make之后,就编译出可以运行在ARM上的QT4环境运行的程序了。
相关阅读: