瑞芯微Rockchip开发者社区
直播中

五斤麻辣油

9年用户 1293经验值
擅长:电源/新能源
私信 关注
[问答]

RK1808移植tslib的过程是怎样的?

RK1808移植tslib的过程是怎样的?

回帖(1)

王聪

2022-2-16 09:15:03
下载安装通用交叉编译器
1.1 下载通用交叉编译器
1.2 安装通用交叉编译器
1.3 验证通用交叉编译器


此部分内容略,前面文章有介绍!
M1808使用的是这个


CROSS_COMPILE=aarch64-linux-gnu-
zlg推荐让用这个,他的资料中提供有这个包


获取和编译 tslib
2.1 获取 tslib
获取 tslib 的源码,git 地址为 https://github.com/kergoth/tslib。
将压缩包发送到 Ubuntu 中并解压,得到名为“tslib-1.21”的目录


2.2 编译 tslib
2.2.1 生成 Makefile
生成 Makefile,还需要安装以下软件。


sudo apt-get update
sudo apt-get install autoconf automake libtool
1
执行 autogen.sh 生成 Makefile,以编译源码。


2.2.1 环境配置
执行下面的指令指定,复制时请注意,下面是一条指令不分行,建议分段复制。注意不要多写空格。
指令会检查编译器等是否会工作。


./configure --host=aarch64-linux-gnu ac_cv_func_malloc_0_nonnull=yes --cache-file=arm-linux.
cache  -prefix=/home/hann/m1808/thirdpart/tslib-1.21/arm-tslib


其中:
host:为交叉编译器
prefix:为指定输出地址


2.2.3 make
直接执行 make 编译及 make install 安装。


make
make install


编译出现警告不用理会以,安装完成后在当前目录下生成一个 arm-tslib 目录。也是我们上面指
令的编译输出目录路径。可以查看生成目录下有以下内容。


hann@hann-virtual-machine:~/m1808/thirdpart/tslib-1.21/arm-tslib$ ls
bin  etc  include  lib  share


2.2.4 error
其实,最后一步make大概率出现的不是警告,而是错误


Making install in etc
make[1]: 进入目录“/home/hann/m1808/thirdpart/tslib-1.21/etc”
make[2]: 进入目录“/home/hann/m1808/thirdpart/tslib-1.21/etc”
/bin/mkdir -p '/usr/local/etc'
/usr/bin/install -c -m 644 ts.conf '/usr/local/etc'
/usr/bin/install: 无法创建普通文件'/usr/local/etc/ts.conf': 权限不够
Makefile:344: recipe for target 'install-sysconfDATA' failed
make[2]: *** [install-sysconfDATA] Error 1
make[2]: 离开目录“/home/hann/m1808/thirdpart/tslib-1.21/etc”
Makefile:414: recipe for target 'install-am' failed
make[1]: *** [install-am] Error 2
make[1]: 离开目录“/home/hann/m1808/thirdpart/tslib-1.21/etc”
Makefile:487: recipe for target 'install-recursive' failed
make: *** [install-recursive] Error 1


这个问题是没有权限导致的;


即使你加了sudo,后面依然会报错:


Making install in etc
make[1]: 进入目录“/home/hann/m1808/thirdpart/tslib-1.21/etc”
make[2]: 进入目录“/home/hann/m1808/thirdpart/tslib-1.21/etc”
/bin/mkdir -p '/home/hann/m1808/thirdpart/tslib-1.21/arm-tslib/etc'
/usr/bin/install -c -m 644 ts.conf '/home/hann/m1808/thirdpart/tslib-1.21/arm-tslib/etc'
make[2]: 对“install-data-am”无需做任何事。
make[2]: 离开目录“/home/hann/m1808/thirdpart/tslib-1.21/etc”
make[1]: 离开目录“/home/hann/m1808/thirdpart/tslib-1.21/etc”
Making install in src
.....
.....
/thirdpart/tslib-1.21/arm-tslib/lib/ts'
libtool:   error: error: cannot install 'linear.la' to a directory not ending in /usr/local/lib/ts
Makefile:812: recipe for target 'install-pluginexecLTLIBRARIES' failed
make[2]: *** [install-pluginexecLTLIBRARIES] Error 1
make[2]: 离开目录“/home/hann/m1808/thirdpart/tslib-1.21/plugins”
Makefile:1097: recipe for target 'install-am' failed
make[1]: *** [install-am] Error 2
make[1]: 离开目录“/home/hann/m1808/thirdpart/tslib-1.21/plugins”
Makefile:487: recipe for target 'install-recursive' failed
make: *** [install-recursive] Error 1


make clean
make
举报

更多回帖

发帖
×
20
完善资料,
赚取积分