继续上篇文章介绍 Qt交叉编译工具建立 中篇 ,Qtopia2.1.1 在2410-S 上的移植是本文要介绍的内容,来看内容。
软件:Redhat Linux9.0 for PC + minicom + Embeded Linux for 2410
- e2fsprogs-libs-1.37.tar.gz,libjpeg-iwmmxt.tar.bz2,qt-embedded-2.3.10-free.tar.gz
- ,qtopia-free-source-2.1.1.tar.bz2,qt-x11-2.3.2.tar.gz,qt-x11-free-3.3.4.tar.bz2,
- tmake-1.13.tar.gz,tslib.tar.gz,buildqtopia.sh
1.实验可以分为以下几个步骤进行:
(1) 在装有linux 的pc 机上安装交叉编译环境。安装光盘时所安装的编译器版本较低,不能正常编译QT程序,所以编译前需要安装Qt/tools/arm-linux-gcc-3.4.1.tar.bz2,并在/root/.bash_profile中修改编译器搜索路径。
(2) 编译库文件:
(3) 编译qt-x11-2.3.2:
(4) 编译安装qt-embedded-2.3.2
(5)编译安装QTOPIA
(6) 将需要拷贝到开发板上的文件整理到一个单独的文件夹里面
在本次实验中,buildqtopia.sh文件已为大家做好了以上几步,我们可以直接运行该文件进行编译。大家可以分析buildqtopia.sh 内容,掌握编译的步骤。
2. 编译步骤:
- cd src
- ./buildqtopia.sh
当编译完成后,在src/qtopia-free-2.1.1/image/opt/Qtopia 下是编译完成的Qtopia 桌面环境。
说明:在编译完成后,src 下的各个目录对应如下软件包:
e2fsprogs-libs-1.37 ext2 文件系统工具包,Qtopia 用到了其中的libuuid
e2fs-install ext2 工具包编译结果
jpeg-6b jpeg 解码库
jpeg-install jpeg 编译结果
tslib 触摸屏工具包
tslib-install 触摸屏工具包编译结果
tmake-1.13 tmake 工具,编译Qtopia 时需要使用
qt-2.3.2 Qt/X11-2.3.2 及编译结果, 编译Qtopia 时需要使用其中的工具
qt-x11-free-3.3.4 Qt/X11-3.3.4 及编译结果,编译Qtopia 时需要使用其中的工具
qt-2.3.10 Qt/Embedded 2.3.10 及编译结果
qtopia-free-2.1.1 Qtopia 2.1.1 及编译结果
3. 安装步骤:
(1)Qtopia
- cd src/qtopia-free-2.1.1/image/opt/
- tar cvjf /tmp/qtopia-install.tar.bz2 Qtopia
将/tmp/qtopia-install.tar.bz2 下载到目标机,并解压缩到某个目录,假设为/mnt/yaffs。
(2)相关文件
将src/qtopia.sh 下载到目标机的/usr/bin 目录下.将src/e2fs-install/lib/libuuid.so*下载到目标机的/usr/lib 目录下.将src/jpeg-install/lib/libjpeg.so*下载到目标机的/usr/lib 目录下
(3)目标机上的处理在目标机上执行:
- cd /usr
- ln -s /mnt/yaffs/Qtopia qpe
- chmod +x /usr/bin/qtopia.sh
注: 光盘中没有提供qtopia.sh文件,下面是qtopia.sh文件
- //qtopia.sh
- #!/bin/sh
- export QTDIR=/usr/qpe
- export QPEDIR=/usr/qpe
- export KDEDIR=/usr/qpe
- export TSLIB_TSDEVICE=/dev/input/event0
- export TSLIB_CONFFILE=/tmp/ts.conf
- export TSLIB_CONSOLEDEVICE=none
- export TSLIB_CALIBFILE=/tmp/ts-calib.conf
- export
- TSLIB_PLUGINDIR=/usr/qpe/lib
- export QT_TSLIBDIR=/usr/qpe/lib/
- export
- LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/qpe/lib/
- export QWS_SIZE=640x480
- export
- QWS_MOUSE_PROTO="TPanel:/dev/input/event0 USB"
- export LANG=zh_CN
- insmod
- /mnt/yaffs/touchscreen/ts-uptech.o
- cp /usr/qpe/etc/ts.conf /tmp
- cd /usr/qpe/bin/
- if [ "$1" = "c" ]; then
- ./ts_calibrate
- fi
- if [ -f "$TSLIB_CALIBFILE" ]; then
- ./qpe &>/dev/null
- else
- ./ts_calibrate
- ./qpe &>/dev/null
- fi
- clear
小结:关于Qt交叉编译工具建立的内容介绍完了,如果哦还有什么不明白的话,请参考编辑推荐。