I am currently using yocto
for building an embedded linux image for TI AM335x (I am using hob
, since I find it more comfortable than using command-line).
I start using the recipe for building 'core-image-base' and here is the selection of packages which are included:
Now I would like to exclude the package alsa-utils-1.0.28-r0
from build, since it has some problems compiling for my target and I really do not need it... so, as far as I can understand, I have to remove all the dependencies which brought alsa-utils
in (that is: alsa-state
and packagegroup-base
, looking at following screenshot):
So I move to Package groups
tab and I remove packagegroup-base
and then I remove alsa-state
and alsa-utils
from the Included recipes
:
Now it seems that alsa-utils
is there no more... but if I try to build the image, this is the result:
Why? Who is still bringing-in alsa-utils
? What am I doing wrong? Is there a way (even command-line) to know why a package is brought-in by yocto?
Use
bitbake -g alsa-utils -u depexp
to display a dependency tree you should be able to see who's depending on it.
See the openembedded wiki.
There is now a proper tool in Yocto to identify why a package is built.
You must first generate the dependency graph for the final recipe you want to build. Then, run oe-depends-dot --why
:
$ bitbake -g core-image-minimal
$ oe-depends-dot -k busybox -w ./task-depends.dot
Because: core-image-minimal packagegroup-core-boot
core-image-minimal -> packagegroup-core-boot -> busybox
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With