tslib-1.4交叉编译详细笔记

  • 格式:docx
  • 大小:13.33 KB
  • 文档页数:2

tslib-1.4交叉编译详细笔记
注:在此之前,请确保你的触摸屏驱动已经移植完成。

1、环境介绍
(1)、主机:虚拟机下fedora9
(2)、硬件平台:mini2440
(3)、交叉编译器:arm-linux-gcc-4.3.2
(4)、触摸屏适配层源码:tslib-1.4.tar.gz
我的根文件系统在在主机上的路径是/opt/rootfs ,tslib-1.4.tar.gz解压到/opt/Qt目录下,解压后多了tslib目录。

2、交叉编译tslib-1.4
cd tslib
./autogen.sh //用于生产configure
//配置成将生成的文件安装到/usr/local/tslib目录,
./configure--prefix=/usr/local/tslib/--host=arm-linuxac_cv_func_malloc_0_nonnull=yes
--enable-inputapi=no //
make
make install //也可以用make install-strip 生成瘦身应用程序和库
编译和安装后在主机的/usr/local/tslib目录下看到编译好的程序和库。

注:如果你的触摸屏驱动支持ioctl操作,在./configure时不用“--enable-inputapi=no”,不支持就要添上,如果不添加无法运行程序,会有“ts_open:Inappropriate ioctol for device“、“ts_open: No such file or directory”这样的错误。

2、配置并加入到根文件系统
(1)、修改tslib/etc目录下的ts.conf文件,将module_raw input前面的注释去掉。

(2)、cp –rfd /usr/local/tslib/* /opt/rootfs/usr/local
(3)、在根文件系统的etc/profile文件中加入运行tslib的环境变量

export TSLIB_ROOT=/usr/local
export TSLIB_TSDEVICE=/dev/input/event0
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib
我将配置好的根文件系统下载到开发板后,曾多次出现“ts_open: No such file or directory”、“./ts_test: error while loading shared libraries: libts-0.0.so.0: cannot open shared object file: No such file or directory
”等错误,究其原因都是配置不仔细造成的,可以在终端使用env来查看tslib的环境变量的配置情况,然后配置好环境变量等。