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

Qt 4.7.2 在DM365触摸屏上的移植

2013-12-19 14:51 204 查看
基于博客http://blog.csdn.net/donganwu/article/details/9164645,增加一些操作,在dm365板上增加了触摸功能,实现与Qt结合。

Tslib-1.4的编译及移植

将tslib-1.4.tar.gz解压到你的临时工作目录下,然后按以下步骤执行:

#cd /home/(user)/QT/tslib
#.autogen.sh
#./configure --prefix=/usr/local/Trolltech/ --host=arm-linux ac_cv_func_malloc_0_nonnull=yes
prefix为要存放的库的路径,如果configure报错,可能要加入CC=arm-linux-gcc

修改/home/(user)/QT/tslib/libtools文件,将文件当中所有的arm-linux-和arm-unkown-linux-用arm_v5t_le-替换,修改LD=”……..”为LD="/usr/local/montavista/pro/devkit/arm/v5t_le/armv5tl-montavista-linux-gnueabi/bin/ld",修改NM=”………..”为NM="arm_v5t_le-nm
-B",将该文件中所有的$echo用$ECHO替换

修改/home/(user)/QT/tslib目录以及子目录下所有Mafile文件,将文件中所有的arm-linux-和arm-unkown-linux-用arm_v5t_le-替换。(%s/arm-linux/arm_v5t_le)

#make
#make install

执行完毕后会在/usr/local/Trolltech目录下生成一个tslib文件夹,这个文件夹下的所有内容就是嵌入式系统触摸屏所需要的一些配置文件、动态库、测试和校准程序等。修改usr/local/Trolltech/tslib/etc/ts.conf文件为:
module_raw input
module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear
注意:每一行必须要顶格些,前面不能有空格等。否则在运行时会出现段错误。

先测试tslib里面的校准文件,将tslib拷贝到自己的文件系统下,运行tslib/bin/ts_calibrate程序。如果正常的话会出现五个光标图,用来校准触摸屏。我在安装的过程中,运行这个程序,光标可以出来,但是点击没有反应,也没有任何报错。经后面检测,发现是驱动上报的数据和tslib接收的不能对应。如果出现同样问题,可以检查tslib源代码下的tests里面的ts_calibrate源程序。
如果/etc目录下产生一个pointercal文件,证明触摸库已经安装成功。

在~/QT/qt-everywhere-opensource-src-4.7.2目录下,配置生成Makefile文件

$./configure -prefix /usr/local/Trolltech/QtEm-4.7.2-dm365 -opensource -confirm-license
-embedded arm -release -shared -fast -no-largefile -no-qt3support -qt-libtiff -qt-libpng -qt-libjpeg -make tools -nomake examples -nomake docs -nomake demos -no-cups -multimedia -xplatform qws/linux-dm365-g++ -no-qvfb -no-webkit -qt-mouse-tslib -qt-mouse-pc -no-mouse-linuxtp -I/usr/local/tslib1.4/include -L/usr/local/tslib1.4/lib
这些配置参数和触摸屏有关的

$make

$make install(同样,make这步时间比较长,makeintsall可能需要加sudo)
到此Qt环境搭建好,然后就是拷贝/usr/local/Trolltech/目录下生成的QtEm-4.7.2-dm365,将其拷贝到文件系统,然后就是环境变量的设置了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: