tslib编译

转自:http://www.arm9home.net/read.php?tid=11590
 
现在用的tslib是使用git下载的。注意,最好使用Linux平台下载,因为tslib中包括了脚本文件(如autogen.sh),而Windows与Linux处理一行的结束字符是不相同的,因此请在Linux中下载,当然,使用编辑器转换结束字符也无所谓。
命令如下:

    $ git clone https://github.com/kergoth/tslib

在Linux下安装git可参考:Linux移植随笔:git的使用。
编译过程如下:

    $ ./autogen.sh
    $ ./configure --host=arm-linux --prefix=/root/nfs/tslib/install
    $ make
    $ make install

make install后,会在/home/latelee/lib/tslib目录生成4个子目录:

    include lib etc bin

生成的库位于lib中,该目录下还有一个子目录ts,它包含了许多校准用到的库(如input.so等)。etc下的ts.conf为配置文件,bin目录下为校准、测试工具(如校准的ts_calibrate,测试用的ts_test)。
配置文件如下:
写入到文件系统的profile文件中
    # Late Lee 2011-03-31 for touchscreen test
    export TSLIB_ROOT=/usr/local/tslib
    export TSLIB_TSDEVICE=/dev/event0
    export TSLIB_CONFFILE=$TSLIB_ROOT/root/ts.conf
    export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
    export TSLIB_CALIBFILE=/etc/pointercal
    export TSLIB_CONSOLEDEVICE=none
    export TSLIB_FBDEVICE=/dev/fb0
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib
使用TSLIB_ROOT这个变量比较好,因为只要将编译生成后的tslib文件夹复制到某个位置,再修改这个变量即可,其它的不用修改。
配置文件ts.conf内容如下:

    module_raw input
    module pthres pmin=1
    module variance delta=30
    module dejitter delta=100
    module linear
之后把tslib make install生成文件拷贝到文件系统中并在环境变量中指定路径

使用:
把tslib make install 生成的lib文件夹拷贝到编辑器目录下并重命名为tslib
在编译程序的时候指定库文件路径

如:CFLAGS=" -L/usr/local/arm/4.3.2/tslib -lts"
因为4.3.2中已经集成了tslib.h文件,所以不用指定头文件路径,否则的话使用
如:CFLAGS=" -L/usr/local/arm/4.3.2/tslib -lts -I/usr/local/arm/4.3.2/tslib/include"




龙芯1B开发板:

移植tslib问题:

按照文档配置好开发板环境后运行ts_test出现
selected device is not a touchscreen I understand

解决方法:
 交叉编译器和内核中关于EV_VERSION的定义不一致,修改内核include/linux/input.h中EV_VERSION的定义和交叉编译器一致就OK了。


之后运行ts_test正常了,但是点击屏幕没有反映。
解决方法:
配置内核时同时使用了spi0和spi1,spi0用于触摸屏,禁用spi1后正常

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值