[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