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

Bai, Haiqing Haiqing.Bai at windriver.com
Wed Dec 13 07:24:24 UTC 2017


Yes, sir,  I did not reproduce this on master.  Even on morty, I only saw
twice.  Maybe we can hold on this and let me keep monitoring.  Thanks.


-----Original Message-----
From: Richard Purdie [mailto:richard.purdie at linuxfoundation.org] 
Sent: 2017年12月12日 17:23
To: Bai, Haiqing; openembedded-core at lists.openembedded.org
Subject: Re: [OE-core] [PATCH] gmp: depends on flex-native to fix parallel building issue

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