tslib的移植

tslib为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等功能。

 

1.下载source code并解压

    tslib-1.3.tar.bz2

  2. 配置

#cd /home/wyl/tslib

#export PREFIX=/home/wyl/tslib/lib

#export CC=/usr/local/arm-linux-4.1.1/bin/arm-linux-gcc

#./autogen.sh

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

#./configure --host=arm-linux  --prefix=$PREFIX  --cache-file=arm-linux.cache

//--enable-static=yes --enable-shared=no

3.修改source code

1make的时候libtool:link: only absolute run-paths are allowed错误

解决办法:要修改/tslib/plugins/Makefile里面找rpath

LDFLAGS :=$(LDFLAGS) -rpath $(PLUGIN_DIR)

修改为:

LDFLAGS :=$(LDFLAGS) -rpath `cd $(PLUGIN_DIR) && pwd`

2。修改src/ts_read_raw.c中的char *defaulttseventtype="H3600",因为我的触摸屏驱动对应此结构。

3。修改src/ts_read_raw.c  中的 ts_config.c文件中 int ts_config(struct tsdev *ts) return ret改为 return 0;

使用默认配置即可,因为这个地方会出现一个错误,错误原因不明,请赐教。

4. 编译与安装

make

make install

cd tests

arm-linux-gcc -o ts_calibrate ts_calibrate.o fbutils.o font_8x8.o font_8x16.o  ../src/.libs/libts.a -ldl -static

5. 运行

export QWS_MOUSE_PROTO=TPanel:/dev/input/event0

export T_ROOT=/data/lib

export LD_LIBRARY_PATH=$T_ROOT/lib

export TSLIB_CONSOLEDEVICE=none

export TSLIB_FBDEVICE=/dev/graphics/fb0

export TSLIB_TSDEVICE=/dev/input/event0

export TSLIB_PLUGINDIR=$T_ROOT/share/ts/plugins

export TSLIB_CONFFILE=$T_ROOT/etc/ts.conf

export TSLIB_CALIBFILE=$T_ROOT/etc/pointercal    

最后就可以运行/bin/ts_cXX应用程序了,运行中将会出现屏幕矫正,矫正完成会在TSLIB_CALIBFILE目录下生成QT或是MINIGUI所需要的标准校验文件。

PS:

   1.  由于我使用的是静态连接,生成的ap不需要到库就可以执行。

   2.  SD文件名错误的关系将ts.conf 改为 conf

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值