Re: error: yacc.h: No such file or directory

From: Ian Lepore <ian_at_freebsd.org>
Date: Tue, 18 Jun 2019 07:53:09 -0600
On Tue, 2019-06-18 at 06:45 -0700, Cy Schubert wrote:
> On June 18, 2019 6:24:36 AM PDT, Michael Tuexen <tuexen_at_freebsd.org>
> wrote:
> > > On 18. Jun 2019, at 12:56, Kubilay Kocak <koobs_at_FreeBSD.org>
> > > wrote:
> > > 
> > > On 18/06/2019 5:42 pm, Michael Tuexen wrote:
> > > > Dear all,
> > > > I'm trying to run
> > > > sudo make buildworld
> > > > in a directory with r349168.
> > > > The result is:
> > > > cc  -O2 -pipe -I/usr/home/tuexen/head/usr.bin/mkesdb_static
> > 
> > -I/usr/home/tuexen/head/usr.bin/mkesdb_static/../mkesdb 
> > -I/usr/home/tuexen/head/usr.bin/mkesdb_static/../../lib/libc/iconv 
> >  -g
> > -MD  -MF.depend.lex.o -MTlex.o -std=gnu99    
> > -I/usr/obj/usr/home/tuexen/head/powerpc.powerpc64/tmp/legacy/usr/in
> > clude
> > -c lex.c -o lex.o
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:46:18: error:
> > > > yacc.h: No
> > 
> > such file or directory
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l: In function
> > > > 'yylex':
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:60: error: 'R_LN'
> > 
> > undeclared (first use in this function)
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:60: error: (Each
> > 
> > undeclared identifier is reported only once
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:60: error: for each
> > 
> > function it appears in.)
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:72: error: 'yylval'
> > 
> > undeclared (first use in this function)
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:73: error: 'L_IMM'
> > 
> > undeclared (first use in this function)
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:76: error: 'R_NAME'
> > 
> > undeclared (first use in this function)
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:77: error:
> > > > 'R_ENCODING'
> > 
> > undeclared (first use in this function)
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:78: error:
> > > > 'R_VARIABLE'
> > 
> > undeclared (first use in this function)
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:79: error:
> > > > 'R_DEFCSID'
> > 
> > undeclared (first use in this function)
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:80: error:
> > > > 'R_INVALID'
> > 
> > undeclared (first use in this function)
> > > > /usr/home/tuexen/head/usr.bin/mkesdb/lex.l:88: error:
> > > > 'L_STRING'
> > 
> > undeclared (first use in this function)
> > > > *** Error code 1
> > > > Stop.
> > > > make[3]: stopped in /usr/home/tuexen/head/usr.bin/mkesdb_static
> > > > *** Error code 1
> > > > Stop.
> > > > make[2]: stopped in /usr/home/tuexen/head
> > > > *** Error code 1
> > > > Stop.
> > > > make[1]: stopped in /usr/home/tuexen/head
> > > > *** Error code 1
> > > > Stop.
> > > > make: stopped in /usr/home/tuexen/head
> > > > This is on a 64 bit PPC system. Doing sudo rm -rf /usr/obj does
> > > > not
> > 
> > resolve the issue.
> > > > Any idea what is going wrong?
> > > > Best regards
> > > > Michael
> > > 
> > > Have seen another report on Twitter yesterday. Didn't see a full
> > 
> > build log, but theirs was had apparently without -j, apparently on
> > June
> > 14 sources:
> > > 
> > > Error:
> > > /usr/src/usr.bin/mkesdb/lex.1:46:10: fatal error: 'yacc.h' file
> > > not
> > 
> > found
> > > 
> > > Have not heard back from them whether it continued after trying
> > > -j2
> > 
> > but I did ask them to hit up freebsd-current if it continued to be
> > an
> > issue
> > OK, I started the build again with -j 2 and it seems that the
> > problem
> > does not occur.
> > 
> > Since I have been using make buildworld without -j n in the past on
> > that machine, the
> > problem seems to be introduced recently. Any idea what is the cause
> > of
> > the problem?
> > 
> > Best regards
> > Michael
> > > 
> > 
> > _______________________________________________
> > freebsd-current_at_freebsd.org mailing list
> > https://lists.freebsd.org/mailman/listinfo/freebsd-current
> > To unsubscribe, send any mail to
> > "freebsd-current-unsubscribe_at_freebsd.org"
> 
> This is a generated file. It would appear the make target to build
> yacc.h hadn't run yet by the time the target that consumed the file
> ran.
> 
> I had a similar problem on Sunday. It wasn't yacc.h but some other
> file, I cannot remember which. It occurred during one of four
> buildworlds. Simply restarting the failed buildworld was enough to
> resolve it.
> 
> My hypothesis is a buildworld race. I wonder if some of the recent
> (over the last week or two) makefile changes exacerbated this issue.
> 
> 

Last Saturday, Bryan (cc'd) made a series of commits (r349061-69) that
were all somehow related to dependency processing in the build.  I
don't know the details, just remember seeing some commits about that.

-- Ian
Received on Tue Jun 18 2019 - 11:53:21 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:21 UTC