您的位置:首页 > 编程语言 > Qt开发

Qt Embedded4.6.2与tslib1.4移植到arm平台

2010-03-26 23:54 375 查看

相关环境:

开发板:友善之臂mini2440(64M版)(注:内核是使用友善之臂编译的2.6.32版内核)

主机操作系统:fedoa 12 i686

所需资源:

tslib1.4

qt-everywhere-opensource-src-4.6.2

友善之臂提供的交叉编译工具(gcc版本为4.3)

移植过程:

tslib的移植:

解压下载的tslib1.4压缩包

进入生成的目录,我的是~/tslib/

执行./autogen.sh

注:如果出现“configure.ac:26: error: possibly undefined macro: AC_ENABLE_SHARED”这样的错误,请安装libtool,即:yum install libtool

执行./configure --prefix=/opt/tslib/ --host=arm-linux ac_cv_func_malloc_0_nonnull=yes

经过一小段时间的编译,如果没出错就执行make install,我的已经安装到/opt/tslib

修改/opt/tslib/etc/ts.conf,把第二行的#号去掉

通过nfs将/opt/tslib通过nfs mount到板子上,或是下载/opt/tslib到板子的/opt/tslib

修改开发板的/etc/profile文件添加如下的内容:

export TSLIB_ROOT=/opt/tslib

export TSLIB_TSDEVICE=/dev/input/event0

export LD_LIBRARY_PATH=$TSLIB_ROOT/lib:$LD_LIBRARY_PATH

export TSLIB_FBDEVICE=/dev/fb0

export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts

export TSLIB_CONSOLEDEVICE=none

export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf

export POINTERCAL_FILE=/etc/pointercal

export TSLIB_CALIBFILE=/etc/pointercal

export QWS_MOUSE_PROTO=’TSLIB:/dev/input/event0’

注:红色部分可根据实际更改

可以先手动执行以上的所有export命令,再运行板子的/opt/tslib/bin/ts_calibrate,我是通过网络连接的板子(本本没串口),执行的如下命令:

/opt/tslib/bin/ts_calibrate >> /dev/tty1

如果板了屏幕出现校准的"十",就表示移植已经成功啦!

qt embedded 的编译与移植测试

将下载的qt-everywhere-opensource-src-4.6.2包解压,把得到目录更名为qt-4.6.2-arm

进入qt-4.6.2-arm目录

输入如下的命令进行相关功能的定制,关于更多的定制选择可以参考./configure --help

./configure -embedded arm -xplatform qws/linux-arm-g++ -no-qt3support -fast -no-largefile -qt-mouse-tslib -I /opt/tslib/include -L /opt/tslib/lib -nomake tools -nomake demos -nomake examples

输入make进行编译

make install安装,安装目录为/usr/local/Trolltech/QtEmbedded-4.6.2-arm

通过nfs把/usr/local/Trolltech mount到板子的同名目录上

编译qt-4.6.2-arm/examples/widgets/calculator下的文件,依次输入如下命令:

cd qt-4.6.2-arm/examples/widgets/calculator

/usr/local/Trolltech/QtEmbedded-4.6.2-arm/bin/qmake -project

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

make

将得到的calculator二进制文件下载到板子,或是放到/usr/local/Trolltech/

telnet到板子的系统,进入calculator所在的目录,输入如下命令:

./calculator -qws >> /dev/tty1

如果出现板子的屏幕出现一个计算器,表明移植已经成功啦!

注:一般来说,在编译成功并安装后,可以把安装目录下的/lib/目录中的几个libQt*.so库文件拷贝到板子的/lib目录,还要为这几个文件在板子的目录下建立几个软链接(如,ln -s libQtCore.so.4.6.2 libQtCore.so.4 )。我的板子的flash才64M,为了方便,就把整个安装目录挂载到板子上了。

特别说明

如果计算器按钮的字太小,应该是字体设置的问题,请自行解决

这里给出的方法并不一定是最优的,仅供参考
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息