您的位置:首页 > 其它

tslib 编译移植步骤

2017-11-07 10:35 375 查看
下载的问题不再记录。移植版本为1.4.

编译步骤

# ./autogen.sh
# ./configure --host=arm-linux-gnueabihf --prefix=/qt/tslib-1.4/install --cache-file=arm-none-linux-gnueabi.cache --enable-inputapi=no ac_cv_func_malloc_0_nonnull=yes# make -j4# make install
只要环境没问题,基本直接过。如果出错,参考下面解决,解决不了的可以百度。
http://blog.csdn.net/lwbeyond/article/details/7694749
1.执行./autogen.sh
提示错误:

./autogen.sh: 4: autoreconf: not found

解决方法:
sudo apt-get install autoconf automake libtool 

2.执行./configure --host=arm-linux --prefix=/usr/local/tslib

提示错误:
ts_test.o(.text+0x218): In function `main':

: undefined reference to `rpl_malloc'

fbutils.o(.text+0x234): In function `open_framebuffer':

: undefined reference to `rpl_malloc'

collect2: ld returned 1 exit status

make[2]: *** [ts_test] Error 1

make[2]: Leaving directory `/home/gfpeak/Desktop/tslib/tests'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/home/gfpeak/Desktop/tslib'

make: *** [all] Error 2 

解决方法:
在编译的时候 ./configure 后面的参数没有设置对,正确设置如下:
./configure --prefix=/usr/local/tslib/ --host=arm-linux ac_cv_func_malloc_0_nonnull=yes 

3. 执行 make 出错

error: call to ‘__open_missing_mode’ declared with attribute error: open with O_CREAT in second argument needs 3 arguments

解决方法:
修改cal_fd
= open ("/etc/pointercal", O_CREAT | O_RDWR ,0)(据说是交叉编译器版本问题)

4. 编译 QT 时报错找不到 tslib 库

交叉编译器是 arm-none-linux-gnu-eabi 4.2.0

The tslib functionality test failed!(已指定了I和L参数), 进入tslib/bin下 file 发现编译生成的是x86版本,遂将 --host
改为arm-none-linux-gnueabi,生成了arm版本(此时configure不再报错)

5. 在开发板上运行校正程序时出现 No raw modules loaded

解决方法

把 tslib/etc 目录下的 ts.conf 的 "#module_raw input"的注释符号"#"去掉。但记住不要在前面留有空格 ,否则还会出现错误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  移植 tslib