[oe] Another weird case of PACKAGES_DYNAMIC and task deps, it seems

Richard Purdie rpurdie at rpsys.net
Sun Jan 6 23:47:23 UTC 2008


Hi Paul,

On Fri, 2008-01-04 at 03:17 +0200, Paul Sokolovsky wrote:
> Hello openembedded-devel,
> 
>   Situation (as reported by Thomas Kunze on IRC):
> 1. Build from scratch
> 2. Kernel has been built.
> 3. Bitbake of initramfs-image.
> 4. Failure with:
> 
> | ERROR: Cannot satisfy the following dependencies for initramfs-module-loop:
> |        update-modules update-modules update-modules
> | ERROR: Cannot satisfy the following dependencies for initramfs-module-nfs:
> |        update-modules
> 
> initramfs-module-* doesn't Depends: on update-modules directly, but
> they Suggest: some kernel-module-* which in turn Depends: on
> update-modules.

Hmm. Which kernel is this with?


> kernel.bbclass has:
> 
> DEPENDS += "virtual/${TARGET_PREFIX}depmod-${@get_kernelmajorversion('${PV}')} virtual/${TARGET_PREFIX}gcc${KERNEL_CCSUFFIX} update-modules"
> 
> But as we now know, that doesn't mean there will be package written
> for update-modules, only that it will be "built".

Nearly but not quite. rootfs_ipk.bbclass says:

do_rootfs[recrdeptask] += "do_package_write_ipk"

This means that every RDEPENDS, RRECOMMENDS and DEPENDS is followed and
the package_write_ipk for every package found must have run.

I just did a:

"bitbake poky-image-minimal -g; cat task-depends.dot | grep update-modules"

which gave me this list:

"poky-image-minimal.do_rootfs" -> "update-modules.do_populate_staging"
"poky-image-minimal.do_rootfs" -> "update-modules.do_package_write_ipk"
"linux.do_package" -> "update-modules.do_package"
"linux.do_configure" -> "update-modules.do_populate_staging"

and a load of other dependencies which we aren't interested in. The key
line is:

"poky-image-minimal.do_rootfs" -> "update-modules.do_package_write_ipk"

So the question is why doesn't your test case have this (I'm assuming it
doesn't). My best guess is that the kernel .bb file in question alters
DEPENDS and that update-modules isn't really in DEPENDS. Which
kernel .bb file serves the machine in question?

Cheers,

Richard







More information about the Openembedded-devel mailing list