对于我正在运行的应用程序,存在运行时错误,因为它找不到libwayland-client.so.0
共享库。我如何知道哪个软件包提供它以及在哪里添加它。我尝试如下所示,但它给了我一个Nothing PROVIDES
错误。
CORE_IMAGE_EXTRA_INSTALL += "libwayland-client"
答案 0 :(得分:1)
构建Yocto图像时,通常不使用单个文件
以相反的顺序
通常,如果缺少某些东西,请执行以下步骤:
wayland
层中有一个名为openembedded-core
的食谱openembedded-core
已包含在Yocto的poky
中(直接以meta
为名,只是为了使新手感到困惑...),因此在此示例中无需添加任何内容bitbake -e wayland >wayland.env
的环境清单grep ^PACKAGES= wayland.env
的包装。在这种情况下很容易,因为实际上只有一个包wayland
(-debug
,-dev
等是特殊用途,不包含该库)IMAGE_INSTALL
,以了解其他选项。构建了有问题的配方后,您还可以检查软件包中包含哪些文件(在这种情况下,配方名称和软件包名称是相同的,但并非总是如此。某些配方可以构建多个适合的软件包用于安装,因此显然他们需要使用不同的名称)
$ oe-pkgdata-util list-pkg-files wayland
wayland:
/usr/lib/libwayland-client.so.0
/usr/lib/libwayland-client.so.0.3.0
/usr/lib/libwayland-cursor.so.0
/usr/lib/libwayland-cursor.so.0.0.0
/usr/lib/libwayland-server.so.0
/usr/lib/libwayland-server.so.0.1.0