ubuntu8.04+cross-compile3.4.1+tslib1.3
(1) 第一步:下载source code并解压我用的是tslib-1.3.tar.bz2。下载地址:http://download.csdn.net/source/673898
(2) 第二步:针对底层驱动修改配置信息
./autogen.sh //(这步会生产configure文件)
./configure CC=arm-linux-gcc --build=i686-pc-linux --target=arm-linux --host=arm-linux --prefix=/usr/local/program/tslib/build --enable-inputapi=no
其中最后一项--enable-inputapi=no 是由于驱动不支持ioctl操作,如果不改最后会有如下现象:我在板子上运行./ts_test的时候,总是提示我:ts_open: No such file or directory?
(3) 第三步:修改源码 1、 修改/tslib/plugins/Makefile里面找rpath
将
LDFLAGS :=$(LDFLAGS) -rpath $(PLUGIN_DIR)
修改为:
LDFLAGS :=$(LDFLAGS) -rpath `cd $(PLUGIN_DIR) && pwd` //(这个可是顿号)
否则make时报如下错:
make的时候libtool:link: only absolute run-paths are allowed
2、修改src/ts_read_raw.c中的
char *defaulttseventtype="UCB1x00";
改为
char *defaulttseventtype="H3600"; //因为我的触摸屏驱动对应此结构。
(4)编译与安装
make
make install
经过安装步骤后,进入…./tslib/build 目录下可以看到如下几个文件夹: bin、etc、share、lib、include
# ls bin/
ts_calibrate ts_print ts_test ts_print_raw
# ls etc/
ts.conf
这里建议配置为(我就是用的这个配置,效果还不错):
module mousebuts
#module variance xlimit=20 ylimit=20 pthreshold=3
#module dejitter xdelta=20 ydelta=20 pthreshold=3
module linear
若实际运行时发现抖动比较厉害,可以采用下面的配置:
module mousebuts
#module variance xlimit=20 ylimit=20 pthreshold=3
module dejitter xdelta=20 ydelta=20 pthreshold=3
module linear
# ls lib/
libts-0.0.so.0 libts-0.0.so.0.1.0 libts.la libts.so
# ls share/ts/
plugins/
将lib及include的内容COPY至/usr/local/arm/3.4.1/arm-linux/[lib、include]中。同时在/opt/FriendlyARM/mini2440/root_nfs下建立一个目录tslib
mkdir tslib
将主机…../tslib/build/下的五个文件夹COPY至该目录下至此tslib交叉编译安装完毕。