Bitbake: "Nothing PROVIDES" error
Asked Answered
O

2

5

I'm new to Yocto and Bitbake. I'm running my yocto machine through a qemu emulator on Ubuntu and attempting to use the meta-selftest layer to get a sense of how to install new layers. I have downloaded the meta-selftest files into the directory where the rest of the meta- directories are, and added the path to the meta-selftest directory to the bblayers.conf file. Running bitbake-layers show-layers command gives the output

layer                 path                                      priority
==========================================================================
meta                  /home/[my name]/Documents/poky/meta         5
meta-poky             /home/[my name]/Documents/poky/meta-poky    5
meta-yocto-bsp        /home/[my name]/Documents/poky/meta-yocto-bsp  5
meta-selftest         /home/[my name]/Documents/poky/meta-selftest  5

however, when I try to run bitbake meta-selftest I get the error:

Loading cache: 100% 
Loaded 1294 entries from dependency cache.
ERROR: Nothing PROVIDES 'meta-selftest'

Summary: There was 1 ERROR message shown, returning a non-zero exit code.

What does this error mean? I checked meta-selftest's dependencies, and it doesn't have any, so I get the sense this error isn't saying there is a dependency issue, but I can't find any clear documentation on what this error is telling me. I get the vague sense it means that bitbake can't find meta-selftest, but show-layers contradicts that by listing it with the correct path.

Any help would be deeply appreciated.

-Patches

Ohalloran answered 6/2, 2018 at 22:25 Comment(0)
T
7

You don't bitbake a layer, you bitbake a recipe from that layer. Try a bitbake test-empty-image for example. That is an image recipe provided by that layer.

Explore the meta-selftest directory and look for .bb files, the recipes. Those can be build using bitbake.

I recommend having a look at the quick start guide: http://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html

Tolerate answered 7/2, 2018 at 5:6 Comment(2)
Thanks for the clarification! Reading through the quick start guide (mostly Ch 4), it seems like adding the name of the layer to bblayers.conf should allow the bitbake command to build that package into the image. Reading further makes it seem like the meta/recipes-sato/images/core-image-sato.bb should be duplicated and edited to include packages (in my case adding IMAGE_INSTALL += "meta-selftest"), however attempting to build this image leads to failure due to the Nothing PROVIDES error again. When I try running bitbake on my actual package, swupdate_2017.11, I get the same err.Ohalloran
Again, you don't install the meta-selftest in the image, you can install a package provided by that layer, eg selftest-ed. A package has the same name as the recipe (selftest-ed_1.14.1.bb). IMAGE_INSTALL += "selftest-ed"Tolerate
C
2

You don't need bitbake the layers name.

Please check in meta-selftest dir and try to find the *.bb file (it's recipes). And try again with " bitbake recipes_name.bb "

Clothes answered 4/3, 2020 at 16:38 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.