第一步:搭建好交叉编译环境arm-linux-gcc-4.3.2.
第二步:交叉编译用于将QT代码编译为ARM平台上的可执行文件的库文件,复制qt-everywhere-opensource-src-4.7.1.tar.gz到/home/liu下面,解压出来,该文件夹下面build-all为编译脚本,qt-everywhere-opensource-src-4.7.1.tar.gz为源码包,打开终端,切换到/home/liu/qt-everywhere-opensource-src-4.7.1目录,执行编译脚本./build-all开始编译,大概两三个小时编译完成,此时会自动在/opt/下面生成文件夹qt-4.7.1,同时在当前目录生成qt-everywhere-opensource-src-4.7.1文件夹,该文件夹下的demo目录为示例,可以直接拷贝到开发板运行.
第三步:设置QT的编译环境,如果没有设置的话,每次都需要/opt/qt-4.7.1/bin/qmake 来编译程序,默认安装了qt-sdk-linux-x86-opensource-2010.05.1.bin后默认用的qmake是用来编译linux下程序用的,而不是嵌入式linux下的,需要重新设置环境变量,打开/etc/profile文件,最后添加
export PATH="/opt/qt-4.7.1/bin:$PATH"
这样的话qmake -v可以看到当前qmake为/opt/qt-4.7.1下面的.
第四步:测试窗口程序main.cpp
#include <QApplication>
#include <QLabel>
int main(int argc, char *argv[])
{
QApplication a(argc,argv);
QLabel *label=new QLabel(&quot;hello!!!&quot;);
label->setGeometry(10,10,200,80);
label->setVisible(true);
label->show();
return a.exec();
}
保存到/home/liu/hello/下
打开终端,cd /home/liu/hello切换到hello目录
执行qmake -project,此时生成了hello.pro文件
执行qmake,此时生成了Makefile文件
执行make,此时生成了hello可执行文件
可以通过命令file /home/liu/hello/hello来查看可执行文件的运行环境,出现for GNU/Linux 2.6.14字样,说明可以运行在linux2.16.14内核版本的嵌入式linux系统上
第五步:拷贝hello到/bin目录下,赋予可执行文件权限chmod 777 hello
./hello
看到了吧,出来咯! |