首页| 论坛| 消息

标题:使用ARM开发详细步骤/关于QT/E安装,编译,以及执行
作者:keisuo
日期:2007-05-28 10:23
内容:

一、编译QTE库
一般,如果你要做Qt/Embedded的开发,最好把Qt/Embedded编译成为两个版本,一个是主机版,一个是目标版。
1. 下载QTE
在获得Qt/Embeded的源码(free版的源码可在www.trolltech.com下载)之后,将其分别解压到两个目录(比如:/qte/qte-3.3.4-host/和:/qte/qte-3.3.4-target/)
2. 编译主机版本
1) export环境变量
export QTDIR=/qte/qte-3.3.4-host
export QTEDIR=$QTDIR
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
2) 运行./configure
./configure -depths 4,8,16 -no-ipv6 -no-cups -no-pch -qvfb
3) 编译Qt/Embedded函数库
make sub-src
4) 编译Qt/Embedded辅助开发工具
cd tools;make
这一步就会成一个可以在主机环境(x86)下运行的uic指令,放在$QTDIR/bin目录中。
5) 如果qvfb编译不成功,可以从http://www.minigui.com/download/devtool.shtml下载一个
3. 编译目标版本
1) export环境变量
export QTDIR=/qte/qte-3.3.4-target
export QTEDIR=$QTDIR
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
2) 运行./configure
cd $QTDIR
./configure -depths 4,8,16 -no-ipv6 -no-cups -no-pch -qvfb -embedded arm -qt-gif -thread -qt-mouse-linuxtp
3) 复制uic命令
cp /qte/qte-3.3.5-host/bin/uic /qte/qte-3.3.4-target/bin/
4) 为了支持触摸屏(和IPAQ兼容的)
在src/embedded/qmouselinuxtp_qws.h中加入
#define QWS_MOUSE_IPAQ
#define QWS_MOUSE_IPAQ_RAW
#define QT_QWS_IPAQ
5) 编译Qt/Embedded函数库
make sub-src
二、制定文件系统
原先QTE用的是2..X,,所以要将新的QTE库考入/qt/lib
三、制定内核
make config;
make dep
make clean
make boot
生成Image文件
四、烧写
1. 烧写BootLoader
2. 烧写Kernel
3. 烧写文件系统
五、编写测试程序
1. 编译QTE下的例子 hello 上传到目标机
2. 在目标机跑QTE程序,编写一个脚本运行
3. 编写pointercal文件
文件内容为
4523 0 -1575429 0 6184 -2356536 65536
4. 将上面三个文件上传到目标机/tmp目录下
在目标机跑QTE程序,编写一个脚本运行
#! /bin/sh
export HOME=/tmp
export QTDIR=/qt
export QPEDIR=/qt
export QWS_MOUSE_PROTO=LinuxTP:/dev/h3600_tsraw
export LD_LIBRARY_PATH=/qt/lib:$LD_LIBRARY_PATH
./hello -qws

//////////////
【原创】关于QT/E安装,编译,以及执行 ..


#1 [草也 12-15 14:21]
将 qt-everywhere-opensource-src-4.6.2.tar.gz 压缩包解压为3份,分别编译 PC ,嵌入式 x86 和 arm 三个版本。
我看的文章说是要把QT分别编译成三个版本,我觉得两个就可以了,一个PC的(虚拟机上跑),一个ARM的(板子上跑)。不知道这三个版本有什么作用么?
#2 [play_play 12-22 14:46]
编译X86版是为了得到QVFB,仿真framebuffer。不用,直接上板跑,也是可以的。
#3 [alice86 04-12 10:33]
对于1楼“将 qt-everywhere-opensource-src-4.6.2.tar.gz 压缩包解压为3份,分别编译 PC ,嵌入式 x86 和 arm 三个版本。”意思是不是说,这么一个压缩包可以代替以前的qt-x11-opensource-src-4.6.2.tar.bz和 qt-embedded-linux-opensource-src-4.6.2.tar.bz 这类的安装包?
#4 [iccome 04-12 13:22]
标记了

回复 发表
主题 版块