3.1 安装与建立Qt桌面运行环境
实验室设备和工具
硬件:PC机Pentumn500以上, 硬盘 10G 以上。
软件:PC机操作系统REDHAT LINUX 9.0 +MINICOM + ARM-LINUX开发环境
tmake-1.13.tar.gz qt-embedded- 2.3.10 -free.tar.gz qt-x11-2.3.2 .tar.gz
实验步骤
在Trolltech公司的网站上(ftp.trolltech.com)可以下载该公司所提供的Qt/Embedded的免费版本,本次实验目录下已有要下载的文件,在做实验前把本次实验用到的三个文件拷贝到/root/2410Qt目录下,以下的步骤是假设你在/root/2410Qt下操作的。
Qt/Embedded平台的搭建需要以下几步:
第一步,解压安装包并设置环境变量
1.解压缩安装包,在2410Qt下生成三个文件夹tmake-1.13、 qt-2.3.2、qt-2.3.10 。
vi /root/qtprofile.sh
增加下面的环境变量:
export TMAKEDIR=/root/2410Qt/tmake-1.13
export QT2DIR=/root/2410Qt/qt-2.3.2
export QTEDIR=/root/2410Qt/qt-2.3.10
(注:每一次修改完/root/qtprofile.sh后都要执行source /root/qtprofile.sh刷新环境变量,下面不再重复。)
环境变量的设置是非常重要的,它关系到能否正确的安装及编译这些安装包,下面介绍一下这些环境变量:
TMAKEDIR : 指向用于编译Qt/Embedded的Tmake 工具
QT2DIR : 指向Qt-X11 2.3.2 的文件夹
QTEDIR : 指向Qt-Embedded 2.3.10 的文件夹
第二步,编译Qt/Embedded。
1. Build Qt 2.3.2
vi /root/qtprofile.sh添加如下:
export TMAKEPATH=$TMAKEDIR/lib/linux-g++
export QTDIR=$QT2DIR
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
在命令行中执行下面命令:
cd $QT2DIR
./configure -no-xft
make
./configure是对Qt进行配置,它包括很多选项,例如可以通过添加“ -no-opengl”等,如果想要进一步了解可以通过键入 ./configure --help来获得更多的帮助信息。
2. Build Qvfb
修改前面添加的环境变量PATH:
export PATH=$QTDIR/bin:$PATH
改为:export PATH=$QTDIR/bin:$PATH:$TMKEDIR/bin:$QTEDIR/bin
终端中执行qvfb &
出现framebuffer窗口即可。
这一步build qvfb并建立了从Qt/Embedded 2.3.10 到Qt 2.3.2的静态库的链接。其中qvfb工具用来生成Virtual framebuffer,这是一个非常有用的工具,它可以模拟在开发板上的显示情况,如果在Virtual framebuffer中运行没有问题的话,可以直接通过交叉编译在开发板上运行。
3. Build Qt/Embedded
/root/qtprofile.sh中添加如下环境变量:
export TMAKEPATH=$TMAKEDIR/lib/qws/linux-x86-g++
export QTDIR=$QTEDIR
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
终端中执行:
cd $QTEDIR
./configure -no-xft -qvfb -depths 4,8,16,32
make
在配置./configure中-qvfb用来支持Virtual framebuffer,-depths 4,8,16,32支持4位,8位,16位,32位的显示深度,此外还可以添加如-syestem-jpeg和-gif来提供对jpeg和gif的支持。配置系统同时还支持对特定平台系统选项的添加,但一般来讲,凡是支持framebuffer的Linux系统都可以使用“linux-generic-g++”平台。详细的配置信息可以通过运行./configure --help命令来查看。
第四步,查看运行结果,如果上面各步都能够成功的编译通过,下面就可以通过运行Qt/Embedded自带的demo来查看运行结果。
●在Virtual framebuffer上运行:
cd $QTEDIR/examples/launcher
qvfb -width 640 -height 480 &
./launcher -qws
运行成功。