Chinaunix首页 | 论坛 | 博客
  • 博客访问: 190856
  • 博文数量: 49
  • 博客积分: 1756
  • 博客等级: 上尉
  • 技术积分: 602
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-27 16:46
文章分类

全部博文(49)

文章存档

2014年(1)

2013年(17)

2012年(10)

2011年(5)

2010年(16)

我的朋友

分类: LINUX

2010-12-01 16:28:49

一、工作环境:

1、主 机: 10.04

2、硬件平台:real 6410

3、交叉编译器:arm-linux-gcc-4.3.2

4、触摸屏适配层源 码:tslib-1.4.tar.gz

二、交叉编译tslib-1.4

1.解压tslib-1.4.tar.gz

cd tslib/

./autogen.sh

echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache

./configure --host=arm-linux --cache-file=arm-linux.cache -- enable-inputapi=no -prefix=/usr/local/tslib

make

make install

红色表示tslib安装后的路径。

修改ts.conf内容

vi /usr/local/tslib/etc/ts.conf

最后内容如下:

module_raw input

module pthres pmin=1

module variance delta=30

module dejitter delta=100

module linear

然后打包整个tslib的内容,下载到开发板里的对应路径下(/usr/local下)。

2.配置环境变量

vi /etc/profile

添加如下内容:

export TSLIB_ROOT=/usr/local/tslib

export TSLIB_TSDEVICE=/dev/input/event0

export TSLIB_CALIBFILE=/etc/pointercal

export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf

export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts

export TSLIB_FBDEVICE=/dev/fb0

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib

重启MINI2440,在终端下输入./ts_calibrate出现tslib的触摸屏五点校准画面,至此,tslib的安装移植成功完成。

三、交叉编译qtopia4.3.5

解 压 qtopia-opensource-4.3.5.tar.gz

cd qtopia-opensource-4.3.5/

vi build

添加如下内容:

#!/bin/bash

./configure -prefix /mini2440 -release -shared -fast -pch -no-qt3support -qt-sql-sqlite -no-libtiff -no-libmng -qt-libjpeg -

qt-zlib -qt-libpng -qt-freetype -nomake tools -nomake examples -nomake demos -optimized-qmake -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 -no-gfx-qvfb -no-kbd-qvfb -no-mouse-qvfb -qt-gfx-linuxfb -qt-kbd-usb -confirm-license -qt-mouse-tslib -I /usr/local/tslib/include -L /usr/local/tslib/lib

注意:红色所标中的路径必须和tslib的安装路径一致,否则,编译不成功,其 他参数可根据自己实际情况进行配置。

保存退出后修改build文件的执行权限。(chmod +x build)而后执行build。

./build

make(时 间较长,耐心等待!!)

make install

cd /mini2440/bin

mv qmake qmake-arm

cp qmake-arm /bin/

执行which qmake-arm命令,如果出现:/bin/qmake-arm/则安装成功。

以后 我们编译qt程序时,都使用qmake-arm即可(即:qmake-arm -project qmake-arm make)。

至此,qt4.3.5安装完成。

四、qtopia4.3.5移植

cd /mini2440/

打包lib文件夹里的所有内容,下载到开发板里的对应路径 下。

(需要在开发板上执行mkdir /mini2440,把lib文件夹移至mini2440文件夹下,目的是为了避免设置qt环境变量的麻烦。此为,可以精简lib文件夹下fonts字体库文件,或者全删,把开发板中自带qt2的宋体字库复制到mini2440/lib/qfonts下)

至此,qt4.3.5移植也告一段落。

网上摘抄的,自己做的时候碰到问题。

小弟现在要移植qt-embedded-opensource-4.5.1到板子上,使用qt自带的触摸屏校准程序,记过很不让人满意,所以我现在打算用tslib-1.4给qt4.5.1打补丁

软件环境:centos5.2,gcc-4.1.1(crosstools)

硬件:ARM920T

系统:qt-embedded-opensource-4.5.1.tar.gz 解压到/home/Raymond/qt-embedded-arm-tslib下

tslib-1.4编译通过,安装到/usr/local/下,同时复制了一份到/nand1/tslib-1.4中

进入/home/Raymond/qt-embedded-arm-tslib中

执行:./configure -prefix /nand1/Trolltech/QtEmbeddedARMTSLib -release  -shared -qvfb -make libs  -nomake tools  -make examples  -make docs  -make demo -no-cups  -no-iconv  -no-dbus  -webkit -no-openssl  -xplatform qws/linux-arm-g++  -embedded arm  -little-endian  -qt-freetype  -qt-gfx-linuxfb  -no-gfx-transformed  -no-gfx-multiscreen  -no-gfx-vnc  -no-gfx-qvfb  -qt-kbd-tty  -qt-kbd-usb  -no-glib -qt-mouse-tslib -I/nand1/tslib-1.4/include -L/nand1/tslib-1.4/lib

其中我已经指定了头文件目录和库文件目录

但是在configure过程中,出现如下错误:

The tslib functionality test failed!

You might need to modify the include and library search paths by editing

QMAKE_INCDIR and QMAKE_LIBDIR in

/home/Raymond/qt-embedded-arm-tslib/mkspecs/qws/linux-arm-g++.

请问这个是什么原因?

根据提示,我又将

/home/Raymond/qt-embedded-arm-tslib/mkspecs/qws/linux-arm-g++ /qmake.conf

中添加了QMAKE_INCDIR=/nand1/tslib-1.4/include

QMAKE_LIBDIR=/nand1/tslib-1.4/lib

这两个参数原本在文件中没有,自己编写

回到/home/Raymond/qt-embedded-arm-tslib中

继续我的configure

可是结果还是  The tslib functionality test failed!

You might need to modify the include and library search paths by editing

QMAKE_INCDIR and QMAKE_LIBDIR in

/home/Raymond/qt-embedded-arm-tslib/mkspecs/qws/linux-arm-g++.

请问这是为什么啊,我晕了,谢谢各位朋友帮忙指点

解决办法:

是arm-linux-gcc的路径没有添加到系统变量中。。。

吸取教训 在Shell中输入EXPORT PATH = ....:$PATH 语句时,只在该Shell中可用。

只有

1.修改profile文件:

#vi /etc/profile

在里面加入:

export PATH="$PATH:/opt/au1200_rm/build_tools/bin"

2.修改.bashrc文件:

# vi /root/.bashrc

在里面加入:

export PATH="$PATH:/opt/au1200_rm/build_tools/bin"

才能完成添加!

阅读(2233) | 评论(1) | 转发(0) |
0

上一篇:QT移植ubuntu

下一篇:UBIFS文件系统的移植

给主人留下些什么吧!~~

chinaunix网友2010-12-02 14:30:57

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com