Search code examples
raspberry-piyocto

bitbake-layers add-layer meta-python meta-raspberrypi failed


I have a Raspberry 4 model B and was trying to build Yocoto linux from Ubuntu for installation. I was following https://medium.com/@shantanoodesai/run-docker-on-a-raspberry-pi-4-with-yocto-project-551d6b615c0b instructions. At step

bitbake-layers add-layer ../layers/meta-openembedded/meta-python
bitbake-layers add-layer ../layers/meta-raspberrypi

I encountered the following errors

pi@raspberrypi:~/Yocto/RaspberryPi/build $ bitbake-layers add-layer ../layers/meta-openembedded/meta-python
NOTE: Starting bitbake server...
Traceback (most recent call last):
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/bin/bitbake-layers", line 93, in <module>
    ret = main()
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/bin/bitbake-layers", line 61, in main
    tinfoil.prepare(True)
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/tinfoil.py", line 408, in prepare
    self.run_command('parseConfiguration')
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/tinfoil.py", line 466, in run_command
    raise TinfoilCommandFailed(result[1])
bb.tinfoil.TinfoilCommandFailed: Traceback (most recent call last):
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/command.py", line 74, in runCommand
    result = command_method(self, commandline)
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/command.py", line 275, in parseConfiguration
    command.cooker.parseConfiguration()
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/cooker.py", line 427, in parseConfiguration
    self.handleCollections(self.data.getVar("BBFILE_COLLECTIONS"))
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/cooker.py", line 1225, in handleCollections
    raise CollectionError("Errors during parsing layer configuration")
bb.cooker.CollectionError: Errors during parsing layer configuration

pi@raspberrypi:~/Yocto/RaspberryPi/build $ bitbake-layers add-layer ../layers/meta-raspberrypi
NOTE: Starting bitbake server...
Traceback (most recent call last):
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/bin/bitbake-layers", line 93, in <module>
    ret = main()
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/bin/bitbake-layers", line 61, in main
    tinfoil.prepare(True)
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/tinfoil.py", line 408, in prepare
    self.run_command('parseConfiguration')
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/tinfoil.py", line 466, in run_command
    raise TinfoilCommandFailed(result[1])
bb.tinfoil.TinfoilCommandFailed: Traceback (most recent call last):
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/command.py", line 74, in runCommand
    result = command_method(self, commandline)
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/command.py", line 275, in parseConfiguration
    command.cooker.parseConfiguration()
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/cooker.py", line 427, in parseConfiguration
    self.handleCollections(self.data.getVar("BBFILE_COLLECTIONS"))
  File "/home/pi/Yocto/RaspberryPi/layers/poky/bitbake/lib/bb/cooker.py", line 1225, in handleCollections
    raise CollectionError("Errors during parsing layer configuration")
bb.cooker.CollectionError: Errors during parsing layer configuration

Can anyone advise what should be fixed?

my gcc-multilib install also failed

sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev xterm python
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'git' instead of 'git-core'
Package gcc-multilib is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'gcc-multilib' has no installation candidate

Solution

  • I think there is an issue with bitbake-layers tool in warrior release here, so an alternative is to try to open conf/bblayers.conf file in an editor and delete the last entry/line ( probably one containing meta-networking ) in BBLAYERS variable and save the file. Now continue with the bitbake-layers add-layer

    bitbake-layers add-layer ../layers/meta-openembedded/meta-networking
    bitbake-layers add-layer ../layers/meta-openembedded/meta-python
    bitbake-layers add-layer ../layers/meta-raspberrypi
    

    Hope this helps