Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Oct 2002 06:47:30 -0600
From:      Chris Pressey <cpressey@catseye.mb.ca>
To:        freebsd-questions@FreeBSD.ORG
Subject:   Re: make buildworld fails
Message-ID:  <20021029064730.2637b4e2.cpressey@catseye.mb.ca>
In-Reply-To: <20021029112907.GB4480@happy-idiot-talk.infracaninophi>
References:  <20021029033143.7c01a0b7.cpressey@catseye.mb.ca> <20021029112907.GB4480@happy-idiot-talk.infracaninophi>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 29 Oct 2002 11:29:07 +0000
Matthew Seaman <m.seaman@infracaninophile.co.uk> wrote:

> On Tue, Oct 29, 2002 at 03:31:43AM -0600, Chris Pressey wrote:
> 
> > I've been following the -STABLE development tree for a while now
> > without any problems, using cvsup from 'make update'.  But sometime
> > over the summer, a problem crept in somewhere and 'make buildworld'
> > now fails.
> 
> Curious.  It's not unknown for there to be problems compiling when
> trying to upgrade over a big version jump.  Not that 4.5 -- 4.7 is
> that big of a jump.  However, such problems are almost never
> experienced by one person in isolation and will usually generate
> substantial amounts of traffic on the freebsd-stable@freebsd.org list.
> 
> My guess is that the problem is specific to your system: something has
> become corrupted or you've made a modification that didn't turn out to
> be quite so cunning after all.
> 
> Are you cvsup'ing the whole src-all collection, or have you tried to
> pick and choose amongst the the individual collections?  Make sure you
> grab the whole source tree.

I'm grabbing the whole thing, yes.

> When you first started using cvsup on your src tree, did you either
> start with a completely empty /usr/src or did you follow the
> instructions at http://www.cvsup.org/faq.html#caniadopt (that and the
> following Questions 12 and 13)?  Of course you probably want to use
> the RELENG_4 tag nowadays.  Not doing this isn't a disaster: all it
> means is that there are odd files scattered through your source tree
> that cvsup doesn't think it owns.  That's usually fairly harmless, but
> can lead to occasional compilation problems.

I installed with sources, and I simply started using cvsup a couple of
months later and it worked, so I didn't look into cleaning out the source
tree.  I will do that though, if the problem persists.

> > uname -a says my system is 4.5-STABLE #18: Tue Mar 19 14:22:13 CST
> > 2002(i386).
> > 
> > make buildworld says:
> > 
> > cc -O -pipe  -DLIBC_RCS -DSYSLIBC_RCS -I/usr/src/lib/libc/include
> > -D__DBINTERFACE_PRIVATE -DINET6 -DPOSIX_MISTAKE
> > -I/usr/src/lib/libc/../libc/locale -DBROKEN_DES -DYP  -c
> > /usr/src/lib/libc/../libc/gen/glob.c -o glob.o
> > /usr/src/lib/libc/../libc/gen/glob.c: In function `glob':
> > /usr/src/lib/libc/../libc/gen/glob.c:187: `GLOB_NOESCAPE' undeclared
> > (first use in this function)
> > /usr/src/lib/libc/../libc/gen/glob.c:187: (Each undeclared identifier
> > is reported only once
> > /usr/src/lib/libc/../libc/gen/glob.c:187: for each function it appears
> > in.)
> > /usr/src/lib/libc/../libc/gen/glob.c: In function `glob0':
> > /usr/src/lib/libc/../libc/gen/glob.c:503: `GLOB_NOMATCH' undeclared
> > (first use in this function)
> > /usr/src/lib/libc/../libc/gen/glob.c: In function `glob2':
> > /usr/src/lib/libc/../libc/gen/glob.c:564: `GLOB_ABORTED' undeclared
> > (first use in this function)
> > /usr/src/lib/libc/../libc/gen/glob.c: In function `glob3':
> > /usr/src/lib/libc/../libc/gen/glob.c:618: `GLOB_ABORTED' undeclared
> > (first use in this function)
> > *** Error code 1
> 
> You should have a file /usr/src/include/glob.h that contains the
> definitions for those macros.  On a recent 4.7-STABLE system it's 4480
> bytes.  There should be a similar, if not identical, copy in
> /usr/include/glob.h:
> 
>     happy-idiot-talk:/usr/src:% fgrep '$FreeBSD' /usr/src/include/glob.h
>      * $FreeBSD: src/include/glob.h,v 1.3.6.3 2002/09/18 14:13:30 mikeh
>      Exp $
>     happy-idiot-talk:/usr/src:% md5 /usr/src/include/glob.h
>     MD5 (/usr/src/include/glob.h) = ac1c36ec9e7ae6e713ae0d04416bc618

I do indeed have /usr/src/include/glob.h, and it is 4480 bytes and it
defines the macros in question.  However, the copy in /usr/include is only
4055 bytes and is older (Aug 21 2001) and it does NOT define the macros in
question.  This is likely the problem - if /usr/include/glob.h is being
used in the build instead of /usr/src/include/glob.h - but also, that
sounds wrong - to build the world, shouldn't it be using the latest and
greatest header files, i.e., /usr/src/include ?  If not, would it be safe
to just copy the newer glob.h into /usr/include (or explicitly add
/usr/src/include to the start of my C_INCLUDE_PATH, at least for building
the world?)

> If that file is corrupt, you might try deleting the whole of
> /usr/src/include, and re-cvsup'ing:
> 
>     cd /usr/src/include
>     rm -rf *
>     cd ..
>     make update
> 
> Then see if the build goes any better.

I've now done this to make absolutely sure I have the latest headers.

> > FWIW, this does not seem to be the same error that I first encountered
> > a few months ago (if memory serves that error was somewhere in ppp,
> > not the C library.  But it was of similar nature, an undeclared
> > identifier.)
> 
> Seems that either you've got some scrambled C header files or your C
> compiler tool chain is completely befuddled.  Have you made any
> modifications to the stock system compiler? Have you installed, say, a
> more recent version of gcc into somewhere that puts an alternate 'cc'
> command on root's path and which the /usr/src Makefiles might be
> picking up? Hmmm... actually if that were the case I think the
> compilation would have blown up long before it got to
> /usr/src/lib/libc/gen/glob.c

Those were my thoughts as well... but the only C compilers I've installed
have been from the ports tree and I'm pretty sure none of them mask cc
('whence cc' says '/usr/bin/cc' and 'cc -v' says 'gcc version 2.95.3
20010315 (release) [FreeBSD]'.)

Thanks,
-Chris

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021029064730.2637b4e2.cpressey>