[Openembedded-architecture] bblayers.conf - Past, Present and Future?

Paul Eggleton paul.eggleton at linux.intel.com
Fri May 13 02:20:31 UTC 2016


On Thu, 12 May 2016 20:46:25 Trevor Woerner wrote:
> On Fri 2016-05-13 @ 07:55:05 AM, Paul Eggleton wrote:
> > On Thu, 12 May 2016 09:08:14 Trevor Woerner wrote:
> > > I often try to start an Angstrom build and then have to go into
> > > bblayers.conf to disable a bunch of layers because they don't "play
> > > nice" with each other. Of course bitbake only tells me about them one at
> > > a time, so I end up having to 1) start a build 2) get an error from
> > > bitbake about a bad layer 3) edit bblayers.conf 4) goto 1. I usually go
> > > through this cycle about 5-6 times, then my build can proceed (once the
> > > 5-6 bad layers have been weeded out).
> > 
> > Can you be a bit more specific about the kinds of failures you're
> > resolving
> > here? Are they mismatched bbappends, overridden configuration, ... ?
> 
> When I setup a build using the angstrom manifest, it initially creates a
> bblayers.conf file that looks like:
> 
>         # LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
> # changes incompatibly
>         LCONF_VERSION = "6"
>         TOPDIR := "${@os.path.dirname(os.path.dirname(d.getVar('FILE',
> True)))}"
> 
>         BBPATH = "${TOPDIR}"
> 
>         BBFILES = ""
> 
>         # These layers hold recipe metadata not found in OE-core, but lack
> any machine or distro content BASELAYERS ?= " \
>           ${TOPDIR}/layers/meta-openembedded/meta-oe \
>           ${TOPDIR}/layers/meta-openembedded/meta-efl \
>           ${TOPDIR}/layers/meta-openembedded/meta-gpe \
>           ${TOPDIR}/layers/meta-openembedded/meta-gnome \
>           ${TOPDIR}/layers/meta-openembedded/meta-xfce \
>           ${TOPDIR}/layers/meta-openembedded/meta-initramfs \
>           ${TOPDIR}/layers/meta-openembedded/meta-multimedia \
>           ${TOPDIR}/layers/meta-openembedded/meta-networking \
>           ${TOPDIR}/layers/meta-openembedded/meta-webserver \
>           ${TOPDIR}/layers/meta-openembedded/meta-ruby \
>           ${TOPDIR}/layers/meta-openembedded/meta-filesystems \
>           ${TOPDIR}/layers/meta-openembedded/meta-perl \
>           ${TOPDIR}/layers/meta-openembedded/meta-python \
>           ${TOPDIR}/layers/meta-kde4 \
>           ${TOPDIR}/layers/meta-java \
>           ${TOPDIR}/layers/meta-browser \
>           ${TOPDIR}/layers/meta-mono \
>           ${TOPDIR}/layers/meta-qt5 \
>           ${TOPDIR}/layers/meta-openembedded/meta-systemd \
>           ${TOPDIR}/layers/meta-ros \
>           ${TOPDIR}/layers/meta-uav \
>           ${TOPDIR}/layers/meta-telephony \
>           ${TOPDIR}/layers/meta-beagleboard/meta-beagleboard-extras \
>           ${TOPDIR}/layers/meta-photography \
>           ${TOPDIR}/layers/meta-musl \
>           ${TOPDIR}/layers/meta-maker \
>         "
> 
>         # These layers hold machine specific content, aka Board Support
> Packages BSPLAYERS ?= " \
>           ${TOPDIR}/layers/meta-beagleboard/common-bsp \
>           ${TOPDIR}/layers/meta-ti \
>           ${TOPDIR}/layers/meta-fsl-arm \
>           ${TOPDIR}/layers/meta-fsl-arm-extra \
>           ${TOPDIR}/layers/meta-altera \
>           ${TOPDIR}/layers/meta-jetson-tk1 \
>           ${TOPDIR}/layers/meta-nslu2 \
>           ${TOPDIR}/layers/meta-smartphone/meta-htc \
>           ${TOPDIR}/layers/meta-smartphone/meta-nokia \
>           ${TOPDIR}/layers/meta-smartphone/meta-openmoko \
>           ${TOPDIR}/layers/meta-smartphone/meta-palm \
>           ${TOPDIR}/layers/meta-handheld \
>           ${TOPDIR}/layers/meta-intel \
>           ${TOPDIR}/layers/meta-sunxi \
>           ${TOPDIR}/layers/meta-raspberrypi \
>           ${TOPDIR}/layers/meta-minnow \
>           ${TOPDIR}/layers/meta-dominion \
>           ${TOPDIR}/layers/meta-atmel \
>           ${TOPDIR}/layers/meta-exynos \
>           ${TOPDIR}/layers/meta-gumstix-community \
>           ${TOPDIR}/layers/meta-qcom \
>           ${TOPDIR}/layers/meta-ettus/common \
>           ${TOPDIR}/layers/meta-openpandora \
>           ${TOPDIR}/layers/meta-edison \
>           ${TOPDIR}/layers/meta-96boards \
>         "
> 
>         # Add your overlay location to EXTRALAYERS
>         # Make sure to have a conf/layers.conf in there
>         EXTRALAYERS ?= " \
>           ${TOPDIR}/layers/meta-linaro/meta-linaro \
>           ${TOPDIR}/layers/meta-linaro/meta-linaro-toolchain \
>           ${TOPDIR}/layers/meta-linaro/meta-aarch64 \
>         "
> 
>         BBLAYERS = " \
>           ${TOPDIR}/layers/meta-angstrom \
>           ${BASELAYERS} \
>           ${BSPLAYERS} \
>           ${EXTRALAYERS} \
>           ${TOPDIR}/layers/openembedded-core/meta \
>         "
> 
> If I then attempt to
> 	$ bitbake console-image
> I get:
> 
> -----------------------------------------------------------------
> issue 1:
>         ERROR: ParseError at
> /z/angstrom/test1/layers/meta-kde4/classes/kde_cmake.bbclass:5: Could not
> inherit file classes/qt4x11.bbclass solution:
>         remove meta-qt4 from bblayers.conf

You mean meta-kde4 right? The fact that you don't have meta-qt4 is the problem 
here.

> -----------------------------------------------------------------
> issue 2:
>         ERROR: ParseError at
> /z/angstrom/test1/layers/meta-uav/recipes-mavlink/qgroundcontrol/qgroundcon
> trol_2.0.3.bb:7: Could not inherit file classes/qt4x11.bbclass solution:
>         remove meta-uav from bblayers.conf

Same as above - missing meta-qt4.

> -----------------------------------------------------------------
> issue 3:
>         ERROR: ParseError at
> /z/angstrom/test1/layers/meta-edison/recipes-images/core/core-image-base-ed
> ison.bb:30: Could not inherit file classes/bootimg.bbclass solution:
>         remove meta-edison from bblayers.conf

OK, this one is meta-edison being out-of-date with respect to krogoth/master.
 
> -----------------------------------------------------------------
> build succeeds, but:
>         WARNING: No recipes available for:
>          
> /z/angstrom/test1/layers/meta-jetson-tk1/recipes-graphics/mesa/mesa_10%.bba
> ppend
> /z/angstrom/test1/layers/meta-jetson-tk1/recipes-graphics/wayland/weston_1.
> 8%.bbappend
> /z/angstrom/test1/layers/meta-openpandora/recipes-core/netbase/netbase_5.0.
> bbappend

meta-openpandora mixing in distro stuff unfortunately :/ It might be argued 
that meta-jetson-tk1 is doing the same.

> /z/angstrom/test1/layers/meta-musl/recipes-core/systemd/systemd_225.bbappen
> d

Is meta-musl needed anymore? I thought Khem had all the necessary support for 
musl in OE-Core by now.

> /z/angstrom/test1/layers/meta-maker/recipes-python/pyyaml/python-pyyaml_3.1
> 0.bbappend

This fix is already in meta-python - Koen, why is this hack still in 
meta-maker?

So some of this is layers doing things they shouldn't, but it also looks like 
there's some misconfiguration as well.

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the Openembedded-architecture mailing list