QT Embedded 4.5.0 移植到友善之臂mini2440开发板

来源:互联网 发布:视频网站 数据库 编辑:程序博客网 时间:2024/05/14 23:19

QT Embedded 4.5.0
移植到友善之臂mini2440开发板
1、准备文件
主机编译器:gcc 版本4以上的
交叉编译器:arm-linux-gcc
软件:qt-embedded-linux-opensource-src-4.5.0.tar.bz2
qt-x11-opensource-src-4.5.0.tar.bz2
tslib1.4.tar.gz
2、编译及安装QT-x11
qt-x11版本可以产生Qt 开发工具,如designer、qvfb 等等。使用qvfb 工具模拟虚拟缓存,就可以
在PC 上开发Qt Embedded 的应程序。
A. 解压及编译x11
把qt-x11-opensource-src-4.5.0.tar.bz2文件放在/tmp/目录下,执行下列命令:
tar xjvf qt-x11-opensource-src-4.5.0.tar.bz2
cd qt-x11-opensource-src-4.5.0
./configure
make
make install
历经漫长的编译过程,约三小时,默认安装在/usr/local/Trolltech/Qt-4.5.0下.编译完成后源程序不
要删除,还有用。
B. 建立x11环境变量文件
vi setenv.sh
添加如下内容:
PATH=/usr/local/Trolltech/Qt-4.5.0/bin:$PATH
LD_LIBRARY_PATH=/usr/local/Trolltech/Qt-4.5.0/lib:$LD_LIBRARY_PATH
保存退出.移到/usr/local/Trolltech/Qt-4.5.0中。
C. 编译qvfb
到qt-x11-opensource-src-4.5.0中重新编译qvfb 即可
cd qt-x11-opensource-src-4.5.0
cd /tools/qvfb
make
在qt-x11-opensource-src-4.5.0/bin下生成qvfb,我们将它copy 至/usr/local/Trolltech/QtEmbedded-
4.5.0-x86/bin 下
cp ../..bin/qvfb /usr/local/Trolltech/QtEmbedded-4.5.0-x86/bin
3、编译及安装QT Embedded软件
A. 解压qt-embedded-linux-opensource-src-4.5.0.tar.bz2
把源文件qt-embedded-linux-opensource-src- 4.5.0.tar.bz2放在/tmp/目录下。执行:
tar xjvf qt-embedded-linux-opensource-src- 4.5.0.tar.bz2
将其解压得到qt-embedded-linux-opensource-src-4.5.0目录,重命名为qt- embedded-linuxopensource-
src-4.5.0-x86
再次解压qt-embedded-linux-opensource-src-4.5.0.tar.bz2,并重命令为qt-embedded- linuxopensource-
src-4.5.0-arm
qt- embedded-linux-opensource-src-4.5.0-x86目录用于产生PC 机环境的编译工具,用于在PC 机
上调试程序。qt- embedded-linux-opensource-src-4.5.0-x86目录用于产生ARM 开发板的编译工具,并
生成必须的运行库拷贝到友善之臂mini2440开发板上。
B. 解压及编译触摸屏软件tslib1.4.tar.gz
把tslib1.4.tar.gz 文件放到/tmp/目录下,解压得到/tmp/tslib 目录。运行:
./autogen.sh
./configure --prefix=/tslib/ --host=arm-linux ac_cv_func_malloc_0_nonnull=yes
make
make install
在PC 机/tslib/下生成触摸屏运行库。
C. 编译qt- embedded-linux-opensource-src-4.5.0-x86
进入qt- embedded-linux-opensource-src-4.5.0-x86目录,运行:
./configure -prefix /usr/local/Trolltech/QtEmbedded-4.5.0-x86 -embedded x86 -qvfb
make
make install
qt-embedded-x86被安装在/usr/local/Trolltech/QtEmbedded-4.5.0-x86下.
D. 建立x86环境变量文件
vi setenv.sh
添加如下内容:
QTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.0-x86
PATH=/usr/local/Trolltech/QtEmbedded-4.5.0-x86/bin:$PATH
LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.0-x86/lib:$LD_LIBRARY_PATH
保存退出.移到/usr/local/Trolltech/QtEmbedded-4.5.0-x86中。
E. 编译qt- embedded-linux-opensource-src-4.5.0-arm
进入qt- embedded-linux-opensource-src-4.5.0-arm 目录,运行:
./configure -prefix /usr/local/Trolltech/QtEmbedded-4.5.0-arm -release -shared -fast -no-largefile
-qt-sql-sqlite -no-qt3support -no-xmlpatterns -no-mmx -no-3dnow -no-sse -no-sse2 -no-svg -nowebkit
-qt-zlib -qt-gif -qt-libtiff -qt-libpng -qt-libmng -qt-libjpeg -make libs -nomake tools -no-nis -no-cups
-no-iconv -no-dbus -no-openssl -xplatform qws/linux-arm-g++ -embedded arm -little-endian -qtfreetype
-depths 16,18 -qt-gfx-linuxfb -no-gfx-transformed -no-gfx-multiscreen -no-gfx-vnc -nogfx-
qvfb -qt-kbd-usb -no-glib -qt-mouse-tslib -I /tslib/include -L /tslib/lib
make
make install
qt-embedded-arm 被安装在/usr/local/Trolltech/QtEmbedded-4.5.0-arm 下.
F. 建立arm环境变量文件
vi setenv.sh
添加如下内容:
QTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.0-arm
PATH=/usr/local/Trolltech/QtEmbedded-4.5.0-arm/bin:$PATH
LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.0-arm/lib:$LD_LIBRARY_PATH
保存退出.移到/usr/local/Trolltech/QtEmbedded-4.5.0-arm 中。
4、运行库移植到mini2440板
A. 准备工作
在PC 机上建立nfs 服务,共享root 目录,在mini 2440板mount。
B. 建立目录
在mini 2440板建立如下目录:
/usr/local/Trolltech/QtEmbedded-4.5.0-arm/bin
/usr/local/Trolltech/QtEmbedded-4.5.0-arm/lib/fonts
/tslib
C.复制字库文件
把PC 机上/usr/local/Trolltech/QtEmbedded-4.5.0-arm/lib/fonts 目录上所有字库文件CP 到mini
2440上/usr/local/Trolltech/QtEmbedded-4.5.0-arm/lib/fonts 上
D. 复制运行库
在PC 机上复制下列文件到mini 2440上/usr/local/Trolltech/QtEmbedded-4.5.0-arm/lib
libQtGui.so.4 libts-0.0.so.0 libQtCore.so.4 libQtNetwork.so.4
一般在PC 机上/usr/local/Trolltech/QtEmbedded-4.5.0-arm/lib/和/tslib/上可以找到上述文件。复制
时注意如果需要复制的文件是链接文件,则把被链接文件都要复制上。
E.复制触摸屏软件
复制PC 机上/tslib/目录上全部文件(含子目录)到mini 2440上/tslib 目录
F. 在开发板上建立环境变量。
修改开发板上/etc/profile 文件,增加以下内容:
export QTDIR=/usr/local/Trolltech/QtEmbedded-4.5.0-arm
export T_ROOT=/tslib
export PATH=$QTDIR/bin:$PATH
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_TSDEVICE=/dev/input/event0
export TSLIB_PLUGINDIR=$T_ROOT/lib/ts
export TSLIB_CONFFILE=$T_ROOT/etc/ts.conf
export TSLIB_CALIBFILE=/etc/pointercal
export QWS_MOUSE_PROTO=tslib:/dev/input/event0
export LD_LIBRARY_PATH=$T_ROOT/lib:$QTDIR/lib
修改mini 2440上/tslib/etc/ts.conf 文件:把第二行# module_raw input 前面的#和空格去除,保存退
出。
G. 校准触摸屏
从新启动开发板,执行:
cd /
cd tslib/bin
./ts_calibrate 校准触摸屏
./ts_test 测试触摸屏
如果正常,QT4 Embedded 移植成功!