tslib的移植

1.下载tslib库代码

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


2.交叉编译

   1   ./autogen.sh

   2   ./configure --host=arm-linux --prefix=/home/allen/workplaces/800/zmm1xx/src/preview-kit/modules/ft5316/tslib/tslib_allen  CC=/home/allen/workplaces/800/zmm1xx/toolchain/arm-marvell-linux-gnueabi/bin/arm-marvell-linux-gnueabi-gcc

   3  make

   4  make install

     这样,就会在/home/allen/workplaces/800/zmm1xx/src/preview-kit/modules/ft5316/tslib/tslib_allen 路径下生成相关目录以及文件


   5.把tslib_allen整个目录拷贝到目标板子/mnt/mtdblock/allen-ts/下面

       然后设置环境变量

     export TSLIB_ROOT=/mnt/mtdblock/allen-ts/tslib_allen
      export TSLIB_TSDEVICE=/dev/input/event0
      export TSLIB_CONFFILE=$TSLIB_ROOT/etc/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


   6. 修改ts.conf文件

      配置文件ts.conf内容如下:

module_raw input

module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear

               module_raw有许多种,这里只使用input(即Linux的input子系统,设备文件名称为/dev/input/event0),其它的删除掉。后面的几个module   还没有深入了解,它们使用的库就在tslib/lib/ts中,最后三个模块的字面意思是“方差(滤波)”、“去抖动(去噪)”、“线性(座标变换)”,对这些东西不了解,不发表意见。

    7./mnt/mtdblock/allen-ts/tslib_allen/bin/ts_calibrate,用bin下面的程式开始测试tp驱动

     运行校准程序,触摸屏依次出现5个点,依次点击之:       生成的校准文件名为pointercal,位于/etc目录下


   

   如果想运行ts的测试程序,在tslib/bin目录下输入

./ts_test  即可。

   屏幕最上方会出现三个按钮,分别为“Drag”、“Draw”和“Quit”,默认是第一个,因此,用触摸笔点击任何一处,十字光标便会到那里。


tslib的移植测试到此结束。



另外,对开源库的移植也做一个小小的总结。

1,下载代码,这是废话。

2,交叉编译

     1,一般是生成配置文件。  ./autogen.sh

     2,用配置文件配置,生成 Makefile

          /configure --host=arm-linux --prefix=xxx  CC=xxx

       具体的可以配置什么,要具体分析configure脚本

     3,生成Makefile后,make,编译开源库

     4,运行make install,把生成的相关文件安装到事先设定的--prefix=xxx 路径


有一些开源库交叉编译没有这么复杂,如ppp,没有autogen.sh,,直接运行configure来配置生成Makefile,并且configure配置选项里面没有--host和CC;可配置--prefix

                                                                     所以生成Makefile之后,编译时候要指定CC ,如make  CC=arm-mv5sft-linux-gnueai-gcc。

                                                                     然后把生成的可执行档放到目标板子的相关目录下/usr/sbin,不需要配置环境变量,即可使用。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章