[yocto] Missing dependencies after setscene, postinst fails
Jack_Fewx at Dell.com
Jack_Fewx at Dell.com
Wed Jul 22 07:50:04 PDT 2015
Hello,
I need some help figuring out a build problem I'm seeing. I know why the build is failing, I just don't know the best way to fix it. I have figured out a workaround, but it seems very hack-ish to me, and I'd really like to know if there is a more elegant solution? Is this a defect or something I'm doing wrong? Has anyone else seen this?
- Setup:
Poky version is 1.7.1. Working directories have been removed, forcing all packages to be restored through the setscene process. The rootfs is read-only, so postinst causes build failure instead of being postponed to first boot.
- Problem:
In this scenario I am consistently seeing 3 Poky recipes fail at postinst. I have triaged the problem to be missing native-class dependencies for each of the 3 packages.
The problem packages are: ca-certificates, nss, and gdk-pixbuf-native. ca-certificates and nss both depend on their own native-class builds, so ca-certificates-native and nss-native respectively, and they fail after doing do_package_write_ipk_setscene. gdk-pixbuf-native needs jpeg-native in order to complete do_populate_sysroot_setscene, but fails due to its absence.
Each of these recipes has a DEPENDS or PACKAGECONFIG appropriate to pull in the needed package during the normal build process, but these dependencies don't seem to carry over to the setscene process.
- My attempt at a solution:
My workaround is to write a bbappend for each of the 3 recipes that looks something like below, that explicitly add the missing dependencies:
--- /dev/null
+++ b/nss/nss_%.bbappend
+do_package_write_ipk_setscene[depends] += "nss-native:do_populate_sysroot"
More information about the yocto
mailing list