qt-embedded-linux-opensource-src-4.5.3在飞凌2440上的成功移植

若用别的交叉编译器最好先查看下交叉编译器所能支持的最低版本的内核,否则会出现kenel is too old 错误,用file libc-so.xx查看, libc-so.xx在交叉编译器的lib下

虚拟机:vmware 8.0

Ubuntu: 内核 linux 2.6.28

交叉编译器:arm-linux-3.4.1(可以到这下载http://download.csdn.net/detail/tongsean/4699796

首先是先移植tslib1.4(参照上一篇博客,路径变化了)

其次是移植qt-embedded-linux-opensource-src-4.5.3:

第一步先下载:ftp://ftp.qt.nokia.com/qt/source/,下载源码包

第二部解压:tar –xzvf qt-embedded-linux-opensource-src-4.5.3

第三步:进入qt-embedded-linux-opensource-src-4.5.3文件夹

cd qt-embedded-linux-opensource-src-4.5.3

第四步进行相关的配置:./configure -release -shared -fast-pch -no-qt3support -qt-sql-sqlite -no-libtiff -no-libmng -qt-libjpeg -qt-zlib -qt-libpng -qt-freetype -no-openssl -nomake examples -nomake demos -nomake tools -optimized-qmake -no-phonon -no-nis -no-opengl -no-cups -no-xcursor -no-xfixes -no-xrandr -no-xrender -no-xkb -no-sm -no-xinerama -no-xshape -no-separate-debug-info -xplatform qws/linux-arm-g++ -embedded arm -depths 16 -no-qvfb -qt-gfx-linuxfb -no-gfx-qvfb -no-kbd-qvfb -no-mouse-qvfb -qt-kbd-usb -confirm-license -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib

注意:

1.其中红色字体 –pch 在用arm-linux-3.4.1时应该去掉,否则会出现错误:<command line>:1:sorry,unimplemented:had to relocate pch

2.蓝色字体为tslib安装的路径,表示此时支持触摸屏

3.默认的安装目录为/usr/local

接下来就是make

         Make install (这俩步时间较久,耐心等待)

以上步骤完成以后可以再/usr/local目录下见到目录Trolltech 文件夹,里面有QtEmbedded-4.5.3-arm文件夹。我们稍后用到其中的lib

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

此时要设置PC机的环境变量(会用到qmake工具)

打开/etc下的bash。Bashrc文件,即Vi /etc/bash.bashrc,在文件的末尾添加:export $PATH =/usr/local/Trolltech/QtEmbedded-4.5.3-arm:$PATH

接下来更新下环境变量:即:source /etc/bash.bashrc

这时你可以查看下 echo $PATH

设置好后,进入/usr/local/arm/ qt-embedded-linux-opensource-src-4.5.3/example/中找个列子我找的是 mainwindows/application/

                        qmake –project

                        qmake

                        make

经过以上三步 你就会发现 application的执行文件

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

进入要制作的根文件系统:我的是/arm/rootfs4

第一步:查看所需要的库文件:arm-linux-readelf –a /usr/local/arm/ qt-embedded-linux-opensource-src-4.5.3/example/ mainwindows/application/ application |grep lib此时会显示该执行文件所需要的库文件

第二部:拷贝库文件,从交叉编译器的目录下即/usr/local/arm/3.4.1/arm-linux/lib下的文件;

如 cp /usr/local/arm/3.4.1/arm-linux/lib/libstdc++.5.0.so lib

第三步:将制作好的tslib拷贝到根文件系统/usr/local下

第四步:在/usr/local下创建/Trolltech/QtEmbedded文件夹。因为 qt库较大,所以我采用网络挂接的方法;挂接到PC机的/usr/local/arm下即:

cp –rf /usr/local/Trolltech/QtEmbedded-4.5.3-arm/lib /usr/local/arm

最重要的一步:设置环境变量:

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

export TSLIB_ROOT=/usr/local/tslib

export TSLIB_TSDEVICE=/dev/event0

export TSLIB_CALIBFILE=/etc/pointercal

export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf

export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts

export TSLIB_CONSOLEDEVICE=none

export TSLIB_FBDEVICE=/dev/fb0

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

export QWS_SIZE=320*240

export QWS_MOUSE_PROTO=Tslib:/dev/event0

export QWS_DISPLAY="LinuxFb:mmWidth35:mmHeight45:0"

第六步:将应用文件拷贝到开发板上即:cp /usr/local/arm/ qt-embedded-linux-opensource-src-4.5.3/example/ mainwindows/application/ application /arm/rootfs4/

最后一步:制作根文件系统下载到实验板上

       mkyaffs2image-128M rootfs4 root7.bin

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值