一、编译安装tslib-1.0
(1)下载tslib-1.0
源代码来自:http://sourceforge.net/projects/tslib.berlios/files/
(2)解压下载后的源文件
tar -xjvf tslib-1.0.tar.bz2
cd tslib-1.0
./autogen.sh
.
/configure
--prefix=
/opt/tslib-1
.0 --host=arm-linux ac_cv_func_malloc_0_nonnull=
yes
prefix是安装目录,host是交叉编译工具链ac_cv_func_malloc_0_nonnull是一个宏开关用于兼容malloc功能
make
make install
(3)编译完成后,拷贝安装目录中的tslib-1.0到开发板中的目录中,我放在/home/user下。
(4)配置环境变量
/*directfb设备,触控和dfb相关联*/
export
set
TSLIB_FBDEVICE=
/dev/fb0
/*触控驱动设备*/
export
set
TSLIB_TSDEVICE=/dev/input/by-path/platform-touchscreen-event
/*触控配置文件,修改ts.conf文件。去掉module_raw input 前面的#号*/
export
set
TSLIB_CONFFILE=
/home/user0/tslib-1.0/etc/ts
.conf
/*校准文件,运行校准进程后生成的文件*/
export
set
TSLIB_CALIBFILE=
/etc/pointercal
/*查看ts文件下是一些so库,具体干什么的还不清楚*/
export
set
TSLIB_PLUGINDIR=
/usr/local/lib/ts
(5)运行tslib-1.0下bin文件中的ts_calibrate进行触屏校准。成功后会出现界面,点击十字符号。最后生成的
文件在/etc/pointercal中。
二、遇到的问题
(1)运行autogen是报错:
./autogen.sh: 4: autoreconf: not found
原因是系统中没安装automake,我用的红帽的系统,安装的办法:
从http://ftp.gnu.org/gnu/下载源码包 automake-1.13.tar.gz autoconf-2.69.tar.gz、m4-1.4.16.tar.gz和libtool-2.4.tar.gz
分别解压这几个文件,./configure;make;make install
(2)编译的时候报错:没有安装gcc-c++
安装方法: yum -y install gcc-c++
至此,tslib-1.0一直成功并在开发板上验证OK。