QT程序到arm板(s5pv210)的移植之旅

本文记录了将QT程序移植到S5PV210开发板的过程,包括移植tslib触摸屏库以实现触摸控制。在Ubuntu 14.04环境下,使用交叉编译工具链,配置并编译QT-4.7.4,解决了编译及触摸屏检测问题,最后成功在校准和测试后完成移植。
摘要由CSDN通过智能技术生成
                                             
前记:
        由于毕设的原因,将来需要移植QT程序到arm板子运行,故有此文。
        看博客寻资料,看到一位作者写道: 知识来源于互联网,必将回报互联网。赞。
        介于从陌生到熟悉的折腾,故将移植过程记录,发文,以己省人。

————————————————————备注———————————————————————
备注:1、移植过程存在各种情况,如遇编译报错,可百度查询,都能解决问题;
          2、本文仅记录作者所遇到的移植问题,仅供参考。
          3、参考另一博客:http://whylinux.blog.51cto.com/10900429/1856076
————————————————————正文———————————————————————
一、开发环境
主机环境:ubuntu14.04
目标机:九鼎创展科技的x210开发板(S5PV210)
主机工具链:gcc-4.8.2
交叉编译工具链:arm-none-linux-gnueabi-gcc-4.4.1 (来自三星的arm-2009q3)
QT移植版本:QT-4.7.4
挂载x210开发板根文件系统方式:NFS
自行制作开发板根文件系统
 
二、移植tslib
说明:一般QT程序放到arm板上都需要触摸控制,所以需要移植这个触摸屏库tslib。
(1)下载
百度下载 tslib-1.4.tar.gz
或者开发板九鼎官方提供的tslib_x210_qtopia.tgz
备注:本人tslib使用的是九鼎官方QT4.8源码(qt_x210v3s_160307.tar.bz2)里面的tslib_x210_qtopia.tgz
 
(2)解压
将tslib源码复制到ubuntu 的/usr/local/src/目录下,解压, 并创建一个目录 tslib_x210 用于稍后的tslib安装
 
(3)修改及缘由(往下看)
查看使用的工具链中的arm-none-linux-gnueabi/libc/usr/include/linux/input.h中的EV_VERSION宏的值,它一定要和内核中的include/linux/input.h中的EV_VERSION宏的值一样(一般都需要修改,选其中任何一个修改同样值即可;本人选择将内核该宏值修改为0x010000,因为本人工具链该宏值是这个,再重新编译内核烧录)
以上缘由:
在tslib源码中的/plugins/input-raw.c文件中check_fd函数里,有一段代码对开发板的触摸屏进行检测,若下面条件只要有一个不满足,则报告"selected device is not a touchscreen I understand",意思是检测不到触摸屏:

if (! ((ioctl(ts->fd, EVIOCGVERSION, &version) >= 0) && (version == EV_VERSION) &&
(ioctl(ts->fd, EVIOCGBIT(0, sizeof(bit) * 8), &bit) >= 0) &&
(bit & (1 << EV_ABS)) &&
(ioctl
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值