linux之Qt4.6.3移植----ubuntu10.10

来源:互联网 发布:淘宝跨店满减怎么用 编辑:程序博客网 时间:2024/06/06 07:11

1移植准备

1.1编译所需环境和资源

1.     Qt源码包:Qt4.6源码包 :qt-everywhere-opensource-src-4.6.3.tar.gz

2.     交叉编译工具:arm-linux-gcc-4.4.3-20100728.tar

3.     触摸屏校验工具 :tslib-1.4.tar.gz

4.     PC运行的OS环境:Ubuntu10.10

5.  mini2440开发板

1.2安装交叉编译器

u     把交叉编译工具包放到根目录下,执行命令如下:

tar zxvf arm-linux-gcc-4.4.3-20100728.tar –C /

u     解压后产生一个目录:/opt/FriendlyARM/toolschain/4.4.3,进入该目录,进入bin目录,执行命令如下:

pwd>>/root/.bashrc

u     接着执行命令如下:

   vi /root/.bashrc

然后修改最后一行:export PATH=/opt/FriendlyARM/toolschain/4.4.3/bin:$PATH

u     为了使配置的环境立即生效,接着执行如下命令:

   source /root/.bashrc

u     查看版本信息,执行命令:

arm-linux-gcc –v

u     出现正确版本,说明配置交叉编译器成功。

1.3安装触摸屏校验工具

n       tslib-1.4.tar.gz放到一个目录下,比如/opt目录下。接着执行命令如下:

tar zxvf tslib-1.4.tar.gz

n       执行命令cd tslib,进入tslib当前目录,接着执行命令如下:

Source autogen.sh

n       然后接着执行配置命令:

./configure    --prefix=/usr/local/tslib --host=arm-linux ac_cv_func_malloc_0_nonnull=yes

n        最后执行编译命令和安装命令如下:

make

make install

n        如果以上步骤没错,则可以在/usr/local/tslib下出现我们需要的库文件,这些库文件我们移植时会用到。

1.4编译Qt-4.6.3库文件

n        qt-everywhere-opensource-src-4.6.3.tar.gz放到/opt目录下。接着执行命令如下:

tar zxvfqt-everywhere-opensource-src-4.6.3.tar.gz

n       接着把解压出来的目录重名成qt-embeded-4.6.3-arm,执行命令如下:

mv qt-everywhere-opensource-src-4.6.3.tar.gz qt-embedded-4.6.3-arm

n       进入qt-embedded-4.6.3-arm,然后执行配置命令,命令如下:

./configure -prefix /usr/local/Trolltech/QtEmbedded-4.6.3-arm -opensource -confirm-license -release -shared -embedded arm -xplatform qws/linux-arm-g++ -depths 16,18,24 -fast -optimized-qmake -pch -qt-sql-sqlite -qt-libjpeg -qt-zlib -qt-libpng -qt-freetype -little-endian -host-little-endian -no-qt3support -no-libtiff -no-libmng -no-opengl -no-mmx -no-sse -no-sse2 -no-3dnow -no-webkit -no-qvfb -no-phonon -no-nis -no-opengl -no-cups -no-glib -no-xcursor -no-xfixes -no-xrandr -no-xrender -no-separate-debug-info -nomake examples -nomake tools -nomake docs -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib

n       接着继续执行编译和安装命令,命令如下:

make

make install

n       以上都成功的话,就会在目录/usr/local/Trolltech/QtEmbedded-4.6.3-arm下看到基于ARM处理平台的Qt库文件。

2开始移植

2.1移植库到mini2440开发板

n       在开发板上建立目录如下:

/usr/local/Trolltech/QtEmbedded-4.6.3-arm/bin

/usr/local/Trolltech/QtEmbedded-4.6.3-arm/lib/fonts

/usr/local/tslib

n       复制所需运行库

把在pc机上编译好的库/usr/local/Trolltech/QtEmbedded-4.6.3/lib/下的所有文件全部复制到 /usr/local/Trolltech/QtEmbedded-4.6.3-arm/lib/

n       复制触摸屏软件

把在pc机上编译安装好/usr/local/tslib/目录下的所有文件都复制到开发板/usr/local/tslib/下。

2.2mini2440建立环境变量

n        用命令执行:vi /etc/profile,在里面增加如下内容:

export QTDIR=/usr/local/Trolltech/QtEmbedded-4.6.3-arm

export QPEDIR=/usr/local/Trolltech/QtEmbedded-4.6.3-arm

export TSLIB_ROOT=/usr/local/tslib

export PATH=$QTDIR/bin:$PATH

export TSLIB_CONSOLEDEVICE=none

export TSLIB_FBDEVICE=/dev/fb0

export TSLIB_TSDEVICE=/dev/input/event0

export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts

export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf

export TSLIB_CALIBFILE=/etc/pointercal

export QWS_MOUSE_PROTO=Tslib:/dev/input/event0

export QWS_DISPLAY=LinuxFb:/dev/fb0

export QWS_SIZE=240x320

export LD_LIBRARY_PATH=$TSLIB_ROOT/lib:$QTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH

 

n       修改mini2440/usr/local/tslib/etc/ts.conf文件:把第二行# module_raw input前面的#和空格去除,保存退出。

2.3移植实现

n        首先在pc机上编译,进入程序(test_hello)目录,然后执行命令如下:

/usr/local/Trolltech/QtEmbedded-4.6.3-arm/bin/qmake

<FONT style="FONT-SIZE: 10.5pt" face=""">

n        然后执行编译命令:make

n        执行完后,用命令:file test_hello 是否为二进制文件。如果是,则说明编译成功,可以移植到mini2440开发板了。

把编译好的程序test_hello通过u盘复制到开发板/usr/local/Trolltech/QtEmbedded-4.6.3-arm/bin/目录下

n        然后通过终端执行./test_hello –qws –fonts wenquanyi,如果开发板出现自己的程序说明执行成功。