Ubuntu 10.04下移植QtE

最近弄QTE的移植,真是不胜其烦。现在把他整理出来,作为分享。

首先是软件包的各个版本

Ubuntu 10.04

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

arm-linux-gcc-3.4.1.tar.bz2

qt-sdk-linux-x86-opensource-2010.04.bin

tslib-1.4.tar.gz

一.选择交叉编译器

我 不知道,移植QT对交叉编译器有固定的版本要求。我查了很多资料,也没得到个什么确切的说法。比较靠谱的一个说法是“ arm-linux-gcc 3.4.1算是一个已经比较旧的版本了,现在我们在Linux 2.6.29环境下,用的是4.3.2的编译器。不过,因为还有一个S3C2410 + Linux 2.4.18的产品线,所以仍然没有舍弃 3.4.1。 ”。而且在其他参数配置相同的情况下,我用自己编译的arm-softfloat-linux-gnu-gcc 3.4.5总是会提示这样那样的错误。对此我办法解释,只好用arm-linux-3.4.1.

安装arm-linux-3.4.1。这个比较简单:

(1). 解压

#tar -jxvf arm-linux-gcc-3.4.1.tar.bz2 得到一个usr文件夹。

(2) .添加环境变量:

#vi /etc/bash.bashrc

在末尾加上:export PATH=$PATH:/*解压所在文件夹*/usr/local/arm/3.4.1/bin:

(3). 使新的环境变量生效:

#source /etc/bash.bashrc

(4). 检查路径是否设置正确:

#echo $PATH

(5) . 检查交叉编译工具是否安装成功:

#arm-linux-gcc -v

出现版本信息就OK了

二 .编译tslib1.4

(1)解压源代码:

tar zxvf tslib-1.4.tar.gz

cd tslib-1.4

(2)安装一些工具:

sudo apt-get install automake libtool

(3)执行脚本生成configure文件

./autogen.sh

(4)执行configure生成Makefile文件

echo “ac_cv_func_malloc_0_nonnull=yes”>$ARCH-linux.cache

./configure   --host=arm-linux   --cache-file=$ARCH-linux.cache  --prefix=/home/linux/tslib-3.4.1

(5)编译安装

make

make install

(6)拷到板子文件系统上

cp -a /home/linux/tslib-3.4.1    /source/rootfs

(7)修改ts.conf文件

vim  ts.conf

将第二行的#module_raw input的"#"去掉,并使 module_raw input顶格。

(8)设置开发板的环境变量。这里写成脚本文件

vim  qtsetenv.sh

export TSLIB_ROOT=/tslib-3.4.1

export TSLIB_TSDEVICE=/dev/event0

export TSLIB_CONFFILE=/tslib-3.4.1/etc/ts.conf

export TSLIB_PLUGINDIR=/tslib-3.4.1/lib/ts

export TSLIB_CALIBFILE=/etc/pointercal

export POINTERCAL_FILE=/etc/pointercal

export TSLIB_FBDEVICE=/dev/fb0

export QWS_SIZE=320x240

export QWS_DISPLAY="LinuxFb:mmWidth100:mmHeight130:0"

export LD_LIBRARY_PATH=/tslib-3.4.1/lib:$LD_LIBRARY_PATH

export QWS_MOUSE_PROTO=Tslib:/dev/event0

export TSLIB_CONSOLEDEVICE=none

export TSLIB_TSEVENTTYYPE=H3600i

(9)测试。可以运行/tslib/bin下的测试文件了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/24754.html