[OE-core] Error while building qemu without X11 support.

Richard Purdie richard.purdie at linuxfoundation.org
Tue Sep 2 06:25:19 UTC 2014


On Tue, 2014-09-02 at 14:21 +0800, Robert Yang wrote:
> 
> On 09/02/2014 02:17 PM, Richard Purdie wrote:
> > On Tue, 2014-09-02 at 00:33 -0300, Otavio Salvador wrote:
> >> On Tue, Sep 2, 2014 at 12:30 AM, Robert Yang <liezhi.yang at windriver.com> wrote:
> >>>
> >>>
> >>> On 09/02/2014 11:17 AM, Otavio Salvador wrote:
> >>>>
> >>>> On Mon, Sep 1, 2014 at 11:51 PM, Robert Yang <liezhi.yang at windriver.com>
> >>>> wrote:
> >>>>>
> >>>>>
> >>>>> On 09/02/2014 10:30 AM, Otavio Salvador wrote:
> >>>>>>
> >>>>>>
> >>>>>> Hello,
> >>>>>>
> >>>>>> During our regression tests we found the following error:
> >>>>>>
> >>>>>> directfb fsl-image-machine-test at imx6qsabresd (1/4) consider defining a
> >>>>>> PREFERRED_PROVIDER entry to match jpeg
> >>>>>> directfb fsl-image-machine-test at imx6qsabresd (1/4) ERROR: Nothing
> >>>>>> PROVIDES 'libxext-native' (but
> >>>>>
> >>>>>
> >>>>>
> >>>>> Did you use meta/recipes-graphics/xorg-lib/libxext_git.bb ? This one
> >>>>> doesn't provide native, but libxext_1.3.2.bb does.
> >>>>>
> >>>>> Seems that we need remove the git version since it is older:
> >>>>>
> >>>>> PV = "1.0.99.1+gitr${SRCPV}"
> >>>>>
> >>>>> And doesn't see a license issue.
> >>>>
> >>>>
> >>>> This has been reproduced in our autobuilder.
> >>>>
> >>>> It removes:
> >>>>
> >>>> x11 and wayland
> >>>>
> >>>> and adds:
> >>>>
> >>>> directfb
> >>>>
> >>>> Can you try to reproduce it?
> >>>>
> >>>
> >>> Yes, I can reproduce the error, sorry, please revert this as a quick
> >>> workaround:
> >>>
> >>> Author: Robert Yang <liezhi.yang at windriver.com>
> >>> Date:   Tue Jul 29 01:02:44 2014 -0700
> >>>
> >>>      qemu-native: depends on libxext-native when enable sdl
> >>>
> >>>
> >>> The DISTRO_FEATURES affects the native recipe, I'm not sure whether this is
> >>> intended or not.
> >>
> >> This is an error in our autobuilder for regression test; Richard,
> >> could you revert this in OE-Core?
> >
> > I think that illustrates the problem but is perhaps not the correct fix.
> >
> > We did hit some issues like this with poky-tiny and I ended up fixing
> > this like:
> >
> > http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=8b70d4b2863f48e843fb6ac9e4a939ae63338093
> >
> > and also
> >
> > http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=fd0398f2c1355597a95242e6c8400eae6ad60fa4
> >
> 
> Hello, how about this RFC patch:
> 
> Subject: [RFC PATCH] distro_features_check.bbclass: skip for native and nativesdk
> 
> The distro features should have no effect to the native or nativesdk
> recipe, for example, if we need build a tool for target based on
> directfb, the native recipe should still be built based on x11 which is
> more common on the host.
> 
> Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
> ---
>   meta/classes/distro_features_check.bbclass |    4 ++++
>   1 file changed, 4 insertions(+)
> 
> diff --git a/meta/classes/distro_features_check.bbclass 
> b/meta/classes/distro_features_check.bbclass
> index 1f1d6fb..16a194e 100644
> --- a/meta/classes/distro_features_check.bbclass
> +++ b/meta/classes/distro_features_check.bbclass
> @@ -8,6 +8,10 @@
>   # Copyright 2013 (C) O.S. Systems Software LTDA.
> 
>   python () {
> +    # DISTRO_FEATURES should not affect the native or nativesdk
> +    if bb.data.inherits_class('native', d) or 
> bb.data.inherits_class('nativesdk', d):
> +        return
> +
>       required_distro_features = d.getVar('REQUIRED_DISTRO_FEATURES', True)
>       if required_distro_features:
>           required_distro_features = required_distro_features.split()

No, this will hack around half the problem and cause issues since
DISTRO_FEATURES still does not contain x11 in the native case. The
better solution is as I mention, correctly allow x11 in DISTRO_FEATURES
for native. For nativesdk, you'd probably make a choice if your SDK was
to include x11.

Cheers,

Richard





More information about the Openembedded-core mailing list