Ubuntu10.10下QTEmbedded-4.5.2在DM6446环境下的搭建

开发环境:
    
主机操作系统:Ubuntu 10.10
目标板Davinci DM6446
交叉编译器:arm_v5t_le-gcc(有Montavista 4.0提供)
1.   下载源码包:
   
  a.   Qt 4.5.2 for Open Source C development on Linux/X11 [120Mb]
         http://get.qtsoftware.com/qt/source/qt-x11-opensource-src-4.5.2.tar.gz
 
        此源码包是用于在Linux系统下开发Qt程序用的,开发出的程序只能在x86体系机器上运行。里面包含了designer,qvfb等工具。
 
  b.   Qt 4.5.2 for Open Source C development on Embedded Linux [124Mb]
         http://get.qtsoftware.com/qt/source/qt-embedded-linux-opensource-src-4.5.2.tar.gz
        此源码包是用来进行嵌入式LinuxQt应用程序开发的,开发出来的程序最终目的是要在开发板上运行,但也可以利用qvfb这个工具在PC机上模拟运行。因此稍后会将此压缩文件解压成两个文件夹,分别作为开发板Qt环境以及PC机上QT的模拟环境。
       
2.   配置ubuntu 10.10编译环境
a.  安装g :  sudo  apt-get install g

b.  安装编译X11用到的库:sudo apt-get install libx11-dev libxext-dev

c.  安装libxtst-dev: sudo apt-get install libxtst-dev 否则编译qvfb出错。
 
d.  安装交叉编译器arm-liunx-gcc,并设置环境变量:这个就不说了,一般有这块板子的人,基本上都是用的Montavista的交叉编译器。
    
3.   编译及安装qt-x11-opensource-src-4.5.2
       
a.  在你的下载目录中解压qt-x11-opensource-src-4.5.2.tar.bz2

zhangyue8624@ubuntu:~/下载$ tar xjvf qt-x11-opensource-src-4.5.2.tar.bz2
  
b.  进入解压后的目录  
zhangyue8624@ubuntu:~/下载$ cd qt-x11-opensource-src-4.5.2
   
c.  进行配置
zhangyue8624@ubuntu:~/下载/qt-x11-opensource-src-4.5.2$ ./configure
  
d.  进行编译 
zhangyue8624@ubuntu:~/下载/qt-x11-opensource-src-4.5.2$ make
  
e.  进行安装
zhangyue8624@ubuntu:~/下载/qt-x11-opensource-src-4.5.2$ make install
       
历经漫长的编译过程,默认安装在/usr/local/Trolltech/Qt-4.5.2下,编译完成后源程序不要删除,还有用。
 
4.    编译配置QtEmbedded-4.5.2-x86版本

之所以要编译x86版本的Qt,是要在PC机下模拟运行为开发板开发出来的程序   
 
a.  解压
zhangyue8624@ubuntu:~/下载$ tar xjvf qt-embedded-linux-opensource-src-4.5.2.tar.bz2
zhangyue8624@ubuntu:~/下载$ mv qt-embedded-linux-opensource-src-4.5.2 qt embedded-linux-opensource-src-4.5.2-x86   
        
zhangyue8624@ubuntu:~/下载$ cd qt-embedded-linux-opensource-src-4.5.2-x86
    
b.   配置编译:
zhangyue8624@ubuntu:~/下载/qt-embedded-linux-opensource-src-4.5.2-x86$ ./configure -prefix /usr/local/Trolltech/QtEmbedded-4.5.2-x86 -embedded x86 -qvfb
zhangyue8624@ubuntu:~/下载/qt-embedded-linux-opensource-src-4.5.2-x86$ make
c.   安装到/usr/local/Trolltech/QtEmbedded-4.5.2-x86目录下:
zhangyue8624@ubuntu:~/下载/qt-embedded-linux-opensource-src-4.5.2-x86$ make install
 
以下红色的部分可以不做,因为我们要使用QTSDK,有这个IDE后下面的步骤就省略了。如果用vi或gedit做开发的,下面的步骤还是要做的。
d.  建立脚本文件:setenv_x86.sh,输入以下内容:
export QTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.2-x86/
export PATH=/usr/local/Trolltech/QtEmbedded-4.5.2-x86/bin/:$PATH
export LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.2-x86/lib/:$LD_LIBRARY_PATH
    
e.  编译x86版QT应用程序前,先执行此脚本文件:
zhangyue8624@ubuntu:/usr/local/Trolltech/QtEmbedded-4.5.2-x86$  source setenv_x86.sh
 
5.    编译qvfb
 
zhangyue8624@ubuntu:~/下载$ cd /qt-x11-opensource-src-4.5.2/tools/qvfb/
zhangyue8624@ubuntu:~/下载/qt-x11-opensource-src-4.5.2/tools/qvfb$ make
把/qt-x11-opensource-src-4.5.2/bin/目录下生成的qvfb复制qvfb到x86目录下:
zhangyue8624@ubuntu:~/下载$ cp /qt-x11-opensource-src-4.5.2/bin/qvfb /usr/local/Trolltech/QtEmbedd-4.5.2-x86/bin
6.    测试

zhangyue8624@ubuntu:~/下载$ cd /usr/local/Trolltech/QtEmbedded-4.5.2-x86/demos/boo
ks

qvfb -width 640 -height -480 &
./books -qws

   
     
7.    编译安装tslib1.4(其实我的DM6446的板子上是没有触摸屏的,不过我还是将tslib1.4弄上来了)
a. 安装编译过程需用到的程序
        
apt-get install autoconf
apt-get install automake
apt-get install libtool
   
b. 配置编译

tar xzvf tslib-1.4.tar.gz

cd tslib
 
./autogen.sh

./configure --prefix=/usr/local/tslib/ --host=arm-linux ac_cv_func_malloc_0_nounull=yes
 
 make
 
c.  安装
make install  //生成瘦身应用程序和库打包

tar czvf tslib.tar.gz tslib
 
d. 复制到NFS文件系统/usr/local目录下解压

tar xzvf tslib.tar.gz 
        
e.  设置环境变量,校准触摸屏。
在开发板终端建立脚本文件,并执行:
export TSLIB_ROOT=/usr/local/tslib
export TSLIB_TSDEVICE=/dev/input/event0 
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_FBDEVICE=/dev/fb0
export QWS_MOUSE_PROTO=Tslib:/dev/input/event0

注意:触摸屏的前提是你的触摸屏驱动已经写好,并加载进了内核.
你可以测试有没有加载触摸屏驱动,cat /dev/input/event0(这只是我的板子上的触摸屏) ,
点击触摸屏,看终端有无显示,若有则表明正确。
        
在开发板/usr/local/tslib/bin目录下执行校准触摸屏程序:
[root@FriendlyARM bin]# ./ts_calibrate
可以运行此目录下的其他程序进行测试。
        
至此,触摸屏程序能顺利运行,接下来移植QtEmbedded-4.5.2,设置好环境变量。

 
 
8.   编译配置QtEmbedded-4.5.2-arm版本

a.  解压
zhangyue8624@ubuntu:~/下载$ tar xjvf qt-embedded-linux-opensource-src-4.5.2.tar.bz2
zhangyue8624@ubuntu:~/下载$ mv qt-embedded-linux-opensource-src-4.5.2 qt-embedded-linux-opensource-src-4.5.2-arm
zhangyue8624@ubuntu:~/下载$ cd qt-embedded-linux-opensource-src-4.5.2-arm
 
b.  配置编译:
配置这一步最重要,如果想要同时支持鼠标和触摸屏,需要用如下配置:
zhangyue8624@ubuntu:~/下载/qt-embedded-linux-opensource-src-4.5.2-arm$ ./configure -prefix /usr/local/Trolltech/QtEmbedded-4.5.2-arm -embedded arm -release -shared -fast -no-largefile -qt-sql-sqlite -no-qt3support -no-xmlpatterns -no-mmx -no-3dnow -no-sse -no-sse2 -no-svg -no-webkit -qt-zlib -qt-gif -qt-libtiff -qt-libpng -qt-libmng -qt-libjpeg -make libs -nomake tools -nomake examples -nomake docs -nomake demo -no-nis -no-cups -no-iconv -no-dbus -no-openssl -xplatform qws/linux-arm-g -little-endian -qt-freetype -depths 16,18 -qt-gfx-linuxfb -no-gfx-transformed -no-gfx-multiscreen -no-gfx-vnc -no-gfx-qvfb -qt-kbd-usb -no-glib -qt-mouse-pc -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib
 
只支持触摸屏:
zhangyue8624@ubuntu:~/下载/qt-embedded-linux-opensource-src-4.5.2-arm$ ./configure -prefix /usr/local/Trolltech/QtEmbedded-4.5.2-arm -embedded arm -release -shared -fast -no-largefile -qt-sql-sqlite -no-qt3support -no-xmlpatterns -no-mmx -no-3dnow -no-sse -no-sse2 -no-svg -no-webkit -qt-zlib -qt-gif -qt-libtiff -qt-libpng -qt-libmng -qt-libjpeg -make libs -nomake tools -nomake examples -nomake docs -nomake demo -no-nis -no-cups -no-iconv -no-dbus -no-openssl -xplatform qws/linux-arm-g -little-endian -qt-freetype -depths 16,18 -qt-gfx-linuxfb -no-gfx-transformed -no-gfx-multiscreen -no-gfx-vnc -no-gfx-qvfb -qt-kbd-usb -no-glib -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib
 
 
zhangyue8624@ubuntu:~/下载/qt-embedded-linux-opensource-src-4.5.2-arm$ make
    
c.  安装到/usr/local/Trolltech/QtEmbedded-4.5.2-arm目录下:
zhangyue8624@ubuntu:~/下载/qt-embedded-linux-opensource-src-4.5.2-arm$ make install
d.  打包编译安装好的QtEmbedded库文件:
zhangyue8624@ubuntu:$/usr/local/Trolltech# tar czvf QtEmbedded-4.5.2-arm.tar.gz QtEmbedded-4.5.2-arm
zhangyue8624@ubuntu:$/usr/local/Trolltechsz QtEmbedded-4.5.2.tgz
 
 
以下红色的部分可以不做,因为我们要使用QTSDK,有这个IDE后下面的步骤就省略了。如果用vi或gedit做开发的,下面的步骤还是要做的。 
e.   建立脚本文件:setenv_arm.sh,输入以下内容:
export QTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.2-arm/
export PATH=/usr/local/Trolltech/QtEmbedded-4.5.2-arm/bin/:$PATH
export LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.2-arm/lib/:$LD_LIBARY_PATH
    
f.  编译ARM版QT应用程序前,先执行此脚本文件:
source setenv-arm.sh
 
安装QTSKD 2010.03,按照 http://www.yafeilinux.com/?p=1552  的说明,进行配置。

你可能感兴趣的:(Ubuntu10.10下QTEmbedded-4.5.2在DM6446环境下的搭建)