我正在尝试将 32 位
ncurses
添加到基于 Yocto 的图像的根文件系统中。
我正在使用 intel yocto bsp sumo 分支
这是我的
local.conf
:
require conf/multilib.conf
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"
IMAGE_INSTALL_append = " dpkg gnutls lib32-glibc lib32-libgcc lib32-libstdc++ lib32-gnutls lib32-freetype lib32 -libx11 lib32-ncurses lib32-dpkg python3-six"
ncurses 文件夹存在于 tmp 中
build/tmp/work/x86-pokymllib32-linux/lib32-ncurses/6.0+20171125-r0
图像文件夹已创建并包含库
/tmp/work/x86-pokymllib32-linux/lib32-ncurses/6.0+20171125-r0/image/lib
libncurses.so.5 libncurses.so.5.9 libncursesw.so.5 libncursesw.so.5.9 libtinfo.so.5 libtinfo.so.5.9
但是这些文件不存在于根文件系统中。
我该如何调试或者下一步应该做什么才能将其放入根文件系统。我应该查看哪些日志文件
感谢您的宝贵时间。
我在packages-split/lib32-ncurses-dev中看到libncurses.so,我应该如何将它添加到rootfs中
默认配方不会将开发包安装到 rootfs 中,除非明确指示这样做。您可以将其添加到 local.conf 中以进行快速测试:
IMAGE_INSTALL_append += lib32-ncurses-dev
您现在应该在 ncurses
packages-split/lib32-ncurses-dev
文件夹中看到 image
的内容以及随后的映像 rootfs。
dbg 包也有类似的方法。
我在 yocto 邮件列表中发布查询后找到了答案。
$ oe-pkgdata-util find-path */libncurses.so*
ncurses-libncurses: /lib64/libncurses.so.5
ncurses-libncurses: /lib64/libncurses.so.5.9
ncurses-dbg: /lib64/.debug/libncurses.so.5.9
lib32-ncurses-dbg: /lib/.debug/libncurses.so.5.9
ncurses-dev: /usr/lib64/libncurses.so
lib32-ncurses-dev: /usr/lib/libncurses.so
lib32-ncurses-libncurses: /lib/libncurses.so.5.9
lib32-ncurses-libncurses: /lib/libncurses.so.5
因此在 local.conf 中包含 lib32-ncurses-libncurses 即可解决问题
IMAGE_INSTALL_append += "lib32-ncurses-libncurses"