Linux 下移植QT(1)---tslib 1.4.0移植
步骤1:下载工具包
如下图

链接在此,点我。
步骤2:将tslib文件放入Linux虚拟机中,
步骤3:解压源码
tar -xvf tslib-1.4.tar
cd tslib-1.4
步骤4:执行autogen.sh脚本产生configure文件。
chmod 777 autogen.sh 赋予执行权限
./autogen.sh
若出现以下问题(绿字),说明是在不同版本的 tslib 下执行 autogen.sh 产生。它们产生的原因一样,是因为没有安装automake 工具。(没有连接网络时,需连接)
./autogen.sh: 4: autoreconf: not found
用一下命令即可。
sudo apt-get install autoconf automake libtool

步骤5:执行configure生成Makefile文件。
先查看交叉编译工具的全名

(好像有点尴尬,用已知的全名查询全名。。。。。不过可以输入前几个字母按tab键补全,会弹出全名)
$ echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache
$ vi tslib-1.4/plugins/input-raw.c

$ ./configure --host=arm-cortex_a8-linux-gnueabi --prefix=/home/linux/tslib --cache-file=$ARCH-linux.cache
说明:
--host是指你的交叉编译器的前缀;例如:你的交叉编译器是arm-linux-gcc,则--host=arm-linux.如果是arm-none-linux-gnueabi-gcc
则--host=arm-none-linux-gnueabi
--prefix 是你执行make install 的时候编译后生成的可执行文件和库文件以及配置文所安装的目录,这个目录不能和tslib源码目录相同;
步骤6:编译安装
$ make
有图示错误,这是因为open函数的语法不符合最新的gcc,解决方法是在/tests/ts_calibrate.c中加入open的第三个参数0777:

修改如下。
if ((calfile = getenv("TSLIB_CALIBFILE")) != NULL) {
cal_fd = open (calfile, O_CREAT | O_RDWR, );
} else {
cal_fd = open ("/etc/pointercal", O_CREAT | O_RDWR, );
}
①查找 grep calfile ./tests/ts_calibrate.c -n

由图可知,在文件226行左右修改。
sudo vim ./test/ts_calibrate.c
修改之后,重新make,问题不见了

$ make install
步骤7:将与安装目录同级下的tslib文件复制到挂宅文件系统中。
$ cp -a /home/linux/tslib/ /source/rootfs
步骤8:修改/rootfs/tslib下的etc目录中ts.conf文件
将第二行的#module_raw input修改成module_raw input,注意一定要顶格写,否则程序执行时会发生读取ts.conf错误每次重编译tslib并安装后,都要重新修改/etc/ts.conf
# cd tslib/etc/
# vi ts.conf 修改长如下。

步骤9:导出环境变量
在/source/rootfs/etc/profile中添加如下代码:

步骤10:开发板上运行/tslib/bin下的测试程序
# /tslib/bin/ts_calibrate
Linux 下移植QT(1)---tslib 1.4.0移植的更多相关文章
- linux下的qt串口通信
1.linux下的qt串口通信跟windows唯一的差别就是端口号的名字,windows下面是COM,而linux是ttyUSB0的路径 2.一般情况下linux插上USB转串口线就可以在/dev/目 ...
- linux下对qt编写的程序进行部署
当我们完成程序设计之后,需要将可执行程序交付客户,而运行环境里面可能是没有相关支持库的,这个时候就涉及到部署的相关问题.对于我们在Linux下基于QT编写的图像处理程序,我们采用linuxdeploy ...
- [置顶] Linux下发布QT程序
Linux下发布QT程序 概述 无论在windows下还是在linux下,可执行程序的运行都依赖于相关的运行库,我们需要将依赖的库找到放到特定的位置,让可执行文件能够找到.在不知道可执行文件依赖哪些库 ...
- Linux下,非Docker启动Elasticsearch 6.3.0,安装ik分词器插件,以及使用Kibana测试Elasticsearch,
Linux下,非Docker启动Elasticsearch 6.3.0 查看java版本,需要1.8版本 java -version yum -y install java 创建用户,因为elasti ...
- Linux下编译Qt源码,一定要下载tar.gz版本,否则会报权限不足
首先下载qt-everywhere-opensource-src-4.8.1源码,下载地址: ftp://ftp.qt-project.org/qt/source/ 在Linux下编译一定要下载qt- ...
- linux下执行QT可执行文件报错
老样子,不多BiBi,直接进入主题! 有时候在linux下编译好QT程序,用QTCreator运行没问题,打包移植到另一台机器上,用命令./XX执行就会报错:error while loading s ...
- linux下安装QT过程
说QT是linux下主要的图形开发工具一点都不过分,虽然诺基亚公司放弃Meego.遣散了Qt开发团队,但是它的各种商业.企业版本还是的到了很好的保护,linux下的开发工具集里还是经常看到它的身影,毕 ...
- Windows,linux下编译qt源码(比较简单)
一.linux下静态编译qt源码 1.取到qt源码并解压到文件夹 2.cd到qt目录下 3.使用configure生成makefile ./configure–prefix /opt/qtstatic ...
- Linux下卸载QT SDK
unbuntu下卸载QT方法一:you can remove it like this, those developers should add this somewhere ! like next ...
随机推荐
- day 03
1.数字类型 int 数字主要是用于计算用的,使用方法并不是很多,就记住一种就可以: bit_length() 当前十进制用二进制表示时,最少使用的位数 s = 5 print(s.bit_leng ...
- opencv版本的问题
opencv版本的问题(由于我安装了两个版本opencv-2.4.9 and opencv-3.1.0),搜了相关问题,可以通过修改了CMakeList.txt解决此问题. 参考了这个博客:http: ...
- go语言中net包tcp socket的使用
一.通过socket我们模拟请求网易 package main; import ( "net" "log" "io/ioutil" &quo ...
- java类中根据已有的变量复写类的toString方法
java类中根据已有的变量复写类的toString方法: 在该类中定义好变量之后,shift+alt+s,从出现的列表中点击gemerate toString,就会自动生成对应的toString方法.
- python 基本数据类型 之 字符串
字符串数据出现的意义 掌握字符串的定义和特性 能熟练掌握字符串常用操作,并了解其他工厂方法 字符串的定义和创建 字符串是一个有序的字符集合,用于存储和表示基本的文本信息, 用引号“ ...
- 内置函数 hashlib configparser logging 模块 C/S B/S架构
1.内置函数 # 内置的方法有很多 # 不一定全都在object中 # class Classes: # def __init__(self,name): # self.name = name # s ...
- Java开发MIS系统需要的技术及其作用
1.后台框架部分,常用spring.struts2(Struts2框架,提供了一种基于MVC体系结构的工程序的开发方法,具有组件模块化.灵活性和重用性等优点,使基于MVC模式的程序结构更加清晰,同时也 ...
- JAVA动手动脑及课后作业
1.查看其输出结果.如何解释这样的输出结果?从中你能总结出什么? 运行结果 true true false 原因 1)在Java中,内容相同的字串常量(“Hello”)只保存一份以节约内存,所以s0, ...
- (转)android权限(permission)大全
文章转载自:http://blog.csdn.net/hai_qing_xu_kong/article/details/24265533 1.android.permission.WRITE_USER ...
- PDO 代码
<?php try{ $dsn = "mysql:dbname=mydb;host=localhost"; $pdo = new PDO($dsn,"root&qu ...