现在的位置: 首页 > 综合 > 正文

Qt/Embedded嵌入式开发环境的建立

2013年09月17日 ⁄ 综合 ⁄ 共 2398字 ⁄ 字号 评论关闭




一.            


开发环境

(1)      

Red Hat Enterprise Linux 5

(2)      

Linux Kernel 2.6.18

(3)      
(Qt开发包)



qt-x11-2.3.2.tar.gz
(4)      
(Qt/Embedded开发包)

qt-embedded-2.3.10-free.tar.gz

(5)      
(自动创建Makefile文件的工具)

tmake-1.13.tar.gz

(6)      
编译器

gcc-2.95或者 更高版本
二.            


解压安装包并设置环境变量

(如下均假设在/root/qte目录下进行)
(1)      

安装tmake:

#cd ~/qte
#tar zxvf tmake-1.13.tar.gz
#export TMAKEDIR=$PWD/tmake-1.13
(2)      

安装qt:

#cd ~/qte
#tar zxvf qt-x11-2.3.2.tar.gz
#export QT2DIR=$PWD/qt-2.3.2
(3)      

安装qte:

#cd ~/qte
#tar zxvf qt-embedded-2.3.10-free.tar.gz
#export QTEDIR=$PWD/qt-2.3.10
三.            


编译Qt
和Qt/Embedded

(1)      

编译Qt:

#cd $QT2DIR
//设置环境变量
#export TMAKEPATH=$TMAKEDIR/lib/linux-g++
#export QTDIR=$QT2DIR
#export PATH=$QTDIR/bin:$PATH
//将Qt库加入到系统共享库中
#ldconfig $QTDIR/lib
//开始编译
#make clean
//configure命令对Qt进行编译设置,其包含很多选项,可通过./configure –help
//来获取详细的帮助信息。
#./configure -no-xft –system-jpeg
#make
//将uic工具复制到Qt/Embedded目录中,可覆盖原文件
#cp bin/uic $QTEDIR/bin/
(2)      

编译qvfb:

//qvfb工具用来生成Virtual Frame Buffer,它可以模拟在嵌入式开发板上的显示
//状况,如果在qvfb中模拟运行没有问题的话,就可以直接通过交叉编译在
//开发板上运行了。
#cd $QTEDIR/tools/qvfb
//设置环境变量
#export PATH=$TMAKEPATH/bin:$PATH
#make clean
//用tmake自动创建Makefile文件
#tmake -o Makefile qvfb.pro
//开始编译
#make
//将qvfb工具复制到Qt/Embedded目录中,可覆盖原文件
#cp qvfb $QTEDIR/bin
(3)      

编译Qt/Embedded:

#cd $QTEDIR
//设置环境变量
#export TMAKEPATH=$TMAKEDIR/lib/qws/linux-x86-g++
#export QTDIR=$QTEDIR
#export PATH=$QTDIR/bin:$PATH
//将Qt/Embedded库加入到系统共享库中
#ldconfig $QTDIR/lib
#make clean
//开始编译
//configure中的选项-qvfb用来对Virtual Frame Buffer进行支持,-depths用来
//支持4位、8位、16位、32位的显示深度
#./configure -no-xft –system-jpeg -qvfb -depths 4,8,16,32
#make
四.            


建立开发环境的初始变量

#vi ~/.bashrc
export TMAKEDIR=~/qte/tmake-1.13
export QT2DIR=~/qte/qt-2.3.2
export QTEDIR=~/qte/qt-2.3.10
export QTDIR=$QTEDIR
export PATH=$QTDIR/bin:$TMAKEPATH/bin:$PATH
五.            


设置Qt/Embedded
开发的共享库

//通过在ld.so.conf文件中加入开发库的绝对路径,将开发库设置成Linux
//共享库,以后就可以直接在项目源代码中使用include预编译指令加载
//Qt和Qt/Embedded开发库中的类了。
#vi /etc/ld.so.conf
       /root/qte/qt-2.3.2/lib
       /root/qte/qt-2.3.10/lib
六.            


测试Virtual Frame Buffer

#cd $QTEDIR/examples/launcher
#qvfb -width 640 -height 480 &
#sleep 10
#./launcher –qws
七.            


说明

以上对于源码包的编译均使用了gcc-2.95(其中包含
g++-2.95)编译器,其由RH9系统自带。若使用其它Linux发行版,则需要保证其安装了gcc-2.95编译器,其它版本的编译器如在最新发行
版中常见的gcc-3.4.6,gcc-4.1等均无法保证正常编译。
当手动安装了gcc-2.95编译器后,需要修改所有源码包中的编译器选项:
tmake:直接修改Makefile文件,指定编译器为gcc-2.95
qt-x11:修改$QT2DIR/configs/linux-g++-shared文件,将编译器指定为g++-2.95
qt-embedded:修改$QTEDIR/configs/linux-x86-g++-shared文件,修改为g++-2.95
在对qt-embedded进行交叉编译时,也要修改对应的config文件(arm-linux-g++)。

抱歉!评论已关闭.