0
votes

I have successfully built the yocto core-image-sato and that went well. Now I am trying to add a recipe to the build. I want to install python-twisted, but am failing miserably.

I found that python-twisted doesn't seem to be available in yocto, but is in openembedded. So I cloned the openembedded repo from here:

http://git.openembedded.org/meta-openembedded/

I then added the necessarily directories to bblayers.conf as such:

BBLAYERS ?= " \
  /home/git/poky/meta \
  /home/git/poky/meta-yocto \
  /home/git/poky/meta-yocto-bsp \
  /home/git/poky/meta-openembedded/meta-oe \
  /home/git/poky/meta-openembedded/meta-python \
  "

When I parse the recipes with bitbake -p, I get the following error:

Loading cache: 100% |###########################################| ETA:  00:00:00
Loaded 765 entries from dependency cache.                                       
ERROR: ParseError at /home/git/poky/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.0.10.bb:12: Could not inherit file classes/bash-completion.bbclass                                                           

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

I tried deleting the file in question since I doubt I need it, but that lead to worse errors.

I have no idea where to go from here. I suspect the issue might be that the files I get from openembedded don't match the files yocto project. But I don't know what to do about that.

Any help on how to add python-twisted to core-image-sato would be greatly appreciated.

2

2 Answers

5
votes

Well, rule number one when using OpenEmbedded-based build systems, make sure that all your layers use the correct branch!

Look at the README in each additional layer that you want to use. That README should specify what other layers are required, and which branches from those required layers.

bash-completion.bbclass was recently added to OE-Core (end of January, 2016). Thus, it's only part of the master branch, no releases incorporate that class.

The networkmanager_1.0.10.bb is only available in the master branch of meta-openembedded. I assume you're using the jethro release of poky (2.0), together with the master branch of meta-openembedded. Please, fix that.

As a side note, if you had incorporated the layer info that you get when you run bitbake, it would have been much easier to help you.

0
votes

File not found error, the bb file networkmanager_1.0.10.bb is not able to inherit file under classes as mentioned in the error.

solution: If you are trying to copy a recipe from open embedded try to copy all the dependent files and modify according to the yocto. In your case

inherit gnomebase gettext systemd bluetooth bash-completion vala gobject-introspection

bash-completion.bbclass is missing in the classes. Due to this the parse error is coming.

Try to add oe-core/classes where you can find the bbclass

This can be found in openembedded-core/meta/classes/ https://github.com/openembedded/openembedded-core/tree/master/meta/classes