首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yocto:向rootfs添加glibc库

Yocto:向rootfs添加glibc库
EN

Stack Overflow用户
提问于 2018-01-19 05:29:19
回答 2查看 2.1K关注 0票数 0

我正在使用Yocto为我们的自定义板(IMX7)构建二进制文件.我需要一些库,如UTF-32.so,UTF-16.so,UTF-7所以从glibc包为蓝牙文件传输。但是这些库在rootfs中不可用,只有/usr/lib/gconv下可用的文件是gconv模块和1.so 8859-1.so。因此,我试图通过添加具有以下内容的新bbappend文件glibc_2.24.bbappend来添加这些库

代码语言:javascript
复制
FILES_${PN} += "${libdir}/gconv/*"

do_install_locale_append() {
cp -r ${dest}${libdir}/gconv ${D}${libdir}/
}

但是,它会导致以下错误:

代码语言:javascript
复制
ERROR: glibc-2.24-r0 do_populate_sysroot: The recipe glibc is trying to install files into a shared area when those files already exist. Those files and their manifest location are:

build_dir/tmp/sysroots/esomimx7d/usr/lib/gconv/ISO-2022-CN.so  Matched in b'manifest-esomimx7d-glibc-locale.populate_sysroot'

build_dir/tmp/sysroots/esomimx7d/usr/lib/gconv/ARMSCII-8.so Matched in b'manifest-esomimx7d-glibc-locale.populate_sysroot'

......

然后,我试图从图像中删除glibc-locale,但是由于一些依赖问题,我无法做到这一点。

有人能帮我把上面提到的库添加到rootfs中吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-22 11:00:46

错误在于告诉你问题的答案。这些文件是glibc-locale配方的一部分,所以您只需要将正确的包安装到rootfs中。

代码语言:javascript
复制
$ oe-pkgdata-util find-path \*/UTF-7.so
glibc-gconv-utf-7: /usr/lib/gconv/UTF-7.so

因此,您需要添加glibc-gconv-utf-7 (或-utf-32等)到您的图像中。

票数 2
EN

Stack Overflow用户

发布于 2018-01-19 13:21:13

您可以删除thm并重新编译,它将工作。

代码语言:javascript
复制
rm build_dir/tmp/sysroots/esomimx7d/usr/lib/gconv/ISO-2022-CN.so
rm build_dir/tmp/sysroots/esomimx7d/usr/lib/gconv/ARMSCII-8.so

这是为了工作,只是我们需要的是终结者的溶胶。这些文件属于glibc-locale,因此您需要安装所需的包。

$ oe-pkgdata-util find-path */UTF-7.so >/usr/lib/gconv/UTF-7

将glibc-gconv-utf-7 (或-utf-32等)添加到食谱图像(例如核心图像-最小)中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48334645

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档