linux arm架构下tslib1.4 移植全过程
2017-03-08 13:10
447 查看
tslib1.4 移植全过程
|环境:
host:Ubuntu11.10
target:Omap35X EVm
交叉编译链:4.3.2,Sourcery G++ Lite 2008q1-126 for ARM GNU/Linux
tslib源代码:tslib-1.4.tar.gz
tslib安装目标路径:/usr/local/arm-linux/tslib1.4
安装步骤:
1.准备工作
确保以下软件已安装
# apt-get install autoconf(或autoconf2.13)
# apt-get install automake
# apt-get install libtool
2.下载
http://download.csdn.net/detail/scholar_fish/4167788
下载版本为tslib-1.4.tar.gz
3.配置
解压源代码tslib-1.4.tar.gz,并进入源代码文件夹
# tar -zxvf tslib-1.4.tar.gz
# cd tslib
配置
# ./autogen.sh
# echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache# ./configure --host=arm-none-linux-gnueabi --cache-file=arm-
4000
none-linux-gnueabi.cache --enable-inputapi=no --prefix=/usr/local/arm-linux/tslib1.4
注意,prefix选项更换为你的安装路径。
4.编译
# make
5.安装
# make install
编译生成的库,头文件等都拷贝至prefix制定的路径中。
6. 修改ts.conf内容
打开安装路径下的/etc/ts.conf文件,修改其内容。
# vi /usr/local/tslib/etc/ts.conf
搜索定位至#module_raw input,把行首的注释符去掉,但要注意行首不要留有空格,即文字是顶格的,不然之后会出现段错误(segmentational fault)。
7.移植至开发板
将安装路径下的整个tslib文件夹,下载至开发班的上,我存放的路径为/usr/local
8. 设置开发板环境变量
通过超级终端, 打开环境变量文件/etc/profile
# vi /etc/profile
添加如下内容:
export TSLIB_ROOT=/usr/local/tslib
export TSLIB_TSDEVICE=/dev/input/event1
export QWS_MOUSE_PROTO=tslib:/dev/input/event1
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_CONSOLEDEVICE=none
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib
其中,TSLIB_ROOT更换为自己实际存放的路径;
另外,TSLIB_TSDEVICE 和QWS_MOUSE_PROTO这两项需要查看自己的板子的触摸屏设备对应/dev/input/下那个文件
9.执行测试命令
重启开发板(使系统读取profile环境变量),进入tslib/bin目录,执行触摸屏校准程序
# ./ts_calibrate
如果出现tslib的触摸屏五点校准画面,至此,tslib的安装移植成功完成。
也可执行此目录下其他的程序来体验触摸屏!
10.出错记录
(1)第4步make时出现以下错误:
ts_test.o: In function `main':
ts_test.c:(.text+0x1d4): undefined reference to `rpl_malloc'
fbutils.o: In function `open_framebuffer':
fbutils.c:(.text+0x9f4): undefined reference to `rpl_malloc'
collect2: ld returned 1 exit status
make[2]: *** [ts_test] 错误 1
make[2]:正在离开目录 `/home/zhuandi/programs/tslib1.4/tslib/tests'
make[1]: *** [all-recursive] 错误 1
make[1]:正在离开目录 `/home/zhuandi/programs/tslib1.4/tslib'
make: *** [all] 错误 2
原因:直接copy了网络上的以下配置参数,参数中的”malloc_0 _nonnull"中多了一个空格。
# ./autogen.sh
# echo "ac_cv_func_malloc_0 _nonnull=yes">arm-none-linux-gnueabi.cache
解决:删除空格即可。
(2)第9步测试校准程序或其他程序时出现错误:egmentaton fault
原因:修改ts.conf时去掉注释符号时,留下空格。
解决:删除空格即可。
(3)第9步测试校准程序或其他程序时出现错误:触摸屏能显示,但对其操作无反应。
原因:网络上一参考博文的环境配置,其中没有export QWS_MOUSE_PROTO=tslib:/dev/input/event1
解决:环境变量加上export QWS_MOUSE_PROTO=tslib:/dev/input/event1 ,重启板子即可。
阅读(21158)| 评论(3)
相关文章推荐
- linux arm架构下tslib1.4 移植全过程2
- 基于ARM S3C2410的TSLIB1.4的移植过程详解
- linux arm移植触摸屏tslib
- Linux操作系统在ARM上 的移植过程及分析
- Arm linux 内核移植及系统初始化过程分析
- linux-2.6.26.5内核的 lcd驱动移植 lcd 触摸屏移植 tslib-1.4移植
- DirectFB移植(GUI arm linux DirectFB GTK tslib)
- QT5.6移植到ARM 之 移植tslib1.4总结
- arm+linux下usb驱动开发,移植Libusb以及开发应用调试过程
- 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题4---共享库中嵌套库带路径【已解决】
- Qt Embedded4.6.2与tslib1.4移植到arm平台
- qt-embedded-linux-opensource-src-4.8.6 + tslib-1.4 + qwt-6.0.2 编译和移植到mini2440开发板
- arm中tslib-1.4移植成功,但qt应用程序 触摸屏没有响应
- qt4.5.2和tslib1.4在arm上的移植配置
- libts 1.4在SkyEye 1.3.1 + Arm Linux 2.6.36上的移植
- tslib1.4 移植全过程
- tslib1.4 移植全过程
- 转:tslib1.4 移植全过程
- 移植编译bcm sdk6.4.8 过程-平台arm-linux cortex-a9双核,系xilinx soc
- 嵌入式Linux引导过程之1.4——Xloader的ddr_init 分类: arm-linux-Ubuntu 2013-07-22 16:28 236人阅读 评论(0) 收藏