tslib移植笔记-1

xiaoxiao2021-02-28  35

tslib背景【摘自百度】: 在采用触摸屏的移动终端中,触摸屏性能的调试是个重要问题之一,因为电磁噪声的缘故,触摸屏容易存在点击不准确、有抖动等问题。 Tslib是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等功能,通常作为触摸屏驱动的适配层,为上层的应用提供了一个统一的接口。

系统环境:

Distributor ID:    UbuntuDescription:    Ubuntu 14.04.1 LTSRelease:    14.04Codename:    trusty

交叉编译工具链:

适用于mini2440开发板的arm-linux-gcc-4.4.3-20100728.tar.gz

源码地址:

https://github.com/kergoth/tslib

下载源码方法:

1.通过git直接下载源码: git clone https://github.com/kergoth/tslib2.网页下载源码,文件名为 tslib-master.zip,解压源码:unzip tslib-master.zip 

编译源码:

1.下载依赖库及工具

sudo apt-get install autoconf

sudo apt-get install automake

sudo apt-get install libtool

2.生成configure

执行 ./autogen.sh

遇到错误1:

➜  ~/test/tslib-master: ./autogen.sh configure.ac:24: error: possibly undefined macro: AC_DISABLE_STATIC      If this token and others are legitimate, please use m4_pattern_allow.      See the Autoconf documentation.configure.ac:25: error: possibly undefined macro: AC_ENABLE_SHAREDconfigure.ac:26: error: possibly undefined macro: AC_LIBTOOL_DLOPENconfigure.ac:27: error: possibly undefined macro: AC_PROG_LIBTOOLautoreconf: /usr/bin/autoconf failed with exit status: 1原因:是因为没有安装上面的libtool

执行 sudo apt-get install libtool 即可。

安装后重新执行信息如下:

➜  ~/test/tslib-master: ./autogen.sh                libtoolize: putting auxiliary files in `.'.libtoolize: copying file `./ltmain.sh'libtoolize: putting macros in `m4/internal'.libtoolize: copying file `m4/internal/libtool.m4'libtoolize: copying file `m4/internal/ltoptions.m4'libtoolize: copying file `m4/internal/ltsugar.m4'libtoolize: copying file `m4/internal/ltversion.m4'libtoolize: copying file `m4/internal/lt~obsolete.m4'libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac andlibtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.configure.ac:18: installing './compile'configure.ac:27: installing './config.guess'configure.ac:27: installing './config.sub'configure.ac:7: installing './install-sh'configure.ac:7: installing './missing'plugins/Makefile.am:13: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')plugins/Makefile.am: installing './depcomp'tests/Makefile.am:12: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')

3.生成Makefile

预先配置好环境变量,交叉工具链arm-linux-gcc路径

./configure --host=arm-linux --prefix=安装路径

网上那个有教程有两种配置方式,但这里暂时没设置也能够编译通过:

1. ./configure --prefix=安装路径 --host=arm-linux ac_cv_func_malloc_0_nonnull=yes

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

    ./configure --host=arm-linux -cache-file=arm-linux.cache --prefix=安装路径

4.编译源码

make && make install

最后在输出目录下生成 bin  etc  include  lib 四个子目录。

bin目录下面为可执行程序 ts_calibrate  ts_harvest  ts_print  ts_print_raw  ts_testetc目录下面只有一个文件 ts.conf

include目录下面有头文件 tslib.h

lib目录下有 libts-1.0.so.0  libts-1.0.so.0.0.0  libts.la  libts.so  pkgconfig  ts

转载请注明原文地址: https://www.6miu.com/read-2626116.html

最新回复(0)