[OE-core] [PATCH] gmp: depends on flex-native to fix parallel building issue

Richard Purdie richard.purdie at linuxfoundation.org
Tue Dec 12 09:22:32 UTC 2017


Let me make this simpler. Which release of the project did you see this
issue with?

I believe this issue would only occur with morty and early, pyro, rocko
and master are not affected.

Cheers,

Richard

On Tue, 2017-12-12 at 07:13 +0000, Bai, Haiqing wrote:
> Comments below. thanks
> 
> -----Original Message-----
> From: Richard Purdie [mailto:richard.purdie at linuxfoundation.org> Sent: 2017年12月11日 6:48
> To: Bai, Haiqing; openembedded-core at lists.openembedded.org
> Subject: Re: [OE-core] [PATCH] gmp: depends on flex-native to fix
> parallel building issue
> 
> On Wed, 2017-11-29 at 14:54 +0800, Haiqing Bai wrote:
> > 
> > fix below parallel building issue:
> > configure:27365: result: flex
> > configure:27403: flex conftest.l
> > .../sysroots/x86_64-linux/usr/bin/flex.real: No such file or
> > directory
> > configure:27407: $? = 127
> > configure:27409: checking lex output file root
> > configure:27420: error: cannot find output from flex; giving up
> > 
> > Signed-off-by: Haiqing Bai <Haiqing.Bai at windriver.com>
> > ---
> >  meta/recipes-support/gmp/gmp.inc | 2 ++
> >  1 file changed, 2 insertions(+)
> > 
> > diff --git a/meta/recipes-support/gmp/gmp.inc b/meta/recipes- 
> > support/gmp/gmp.inc index abac8cf..1b35eaa 100644
> > --- a/meta/recipes-support/gmp/gmp.inc
> > +++ b/meta/recipes-support/gmp/gmp.inc
> > @@ -10,3 +10,5 @@ PACKAGECONFIG[readline] = "--with-readline=yes, 
> > --with-readline=no,readline"
> >  
> >  ARM_INSTRUCTION_SET_armv4 = "arm"
> >  ARM_INSTRUCTION_SET_armv5 = "arm"
> > +
> > +DEPENDS = "flex-native"
> With recipe specific sysroots this should now be deterministic. The
> log above suggests you were not using recipe specific sysroots? This
> would therefore only be applicable to morty and earlier?
> [This issue is founded on x86-64 building,  but it does not mean it
> is only related with x86.  Actually this is caused by the defect of
> the traditional probe mechanism of 'configure',  the package
> configure
> script try to probe whether has package 'flex' , then some optional
> actions will be done by it.  In this issue,  when this probe
> happens,   /usr/bin/flex exists but '/usr/bin/flex.real' has not
> created for the
> parallel building,  then configure reports the error and exits from
> building.   Since there are no atomic guarantee for the package
> output during parallel building, so here add this depends]
> 
> Cheers,
> 
> Richard
> 



More information about the Openembedded-core mailing list