Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 9 Aug 2004 11:39:08 +0200 (CEST)
From:      Harti Brandt <harti@freebsd.org>
To:        Danny Braniss <danny@cs.huji.ac.il>
Cc:        freebsd-current@freebsd.org
Subject:   Re: Need help: buildworld for CURRENT while under STABLE is not  working
Message-ID:  <20040809113434.T12541@beagle.kn.op.dlr.de>
In-Reply-To: <20040809093143.B2FFD43D1D@mx1.FreeBSD.org>
References:  <20040809093143.B2FFD43D1D@mx1.FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 9 Aug 2004, Danny Braniss wrote:

DB>> On Sunday 08 August 2004 06:51 am, you wrote:
DB>> > > --Boundary-00=_yfRFBa4bKiL1gzl
DB>> > > Content-Type: text/plain;
DB>> > >   charset="us-ascii"
DB>> > > Content-Transfer-Encoding: 7bit
DB>> > > Content-Disposition: inline
DB>> > >
DB>> > > I have STABLE on ad0 and a working snapshot of CURRENT on ad1, I am
DB>> > > trying to run:
DB>> > >
DB>> > > make buildworld -DDESTDIR=/ad1 while booted from STABLE and I keep
DB>> > > getting the following error: (Note: cvsup'ed just before running make
DB>> > > build world still didn't help, neither does cleaning before hand...) 
DB>> > > I'll attach my make.conf in case that helps...
DB>> >
DB>> > type
DB>> > 	make buildworld
DB>> > then when you  are ready to install:
DB>> > 	make installworld DESTDIR=/ad1
DB>> > (notice no -DESTDIR ...)
DB>> >
DB>> > danny
DB>> 
DB>> OK, I just tried that after cleaning the tree and   Igetexaclt y the same 
DB>> failure:
DB>> 
DB>> ===> usr.sbin/bsnmpd/gensnmptree
DB>> /usr/obj/ad1/usr/src/i386/ad1/usr/src/usr.sbin/bsnmpd/gensnmptree created 
DB>> for /ad1/usr/src/usr.sbin/bsnmpd/gensnmptree
DB>> rm -f .depend
DB>> mkdep -f .depend -a    
DB>> -I/ad1/usr/src/usr.sbin/bsnmpd/gensnmptree/../../../contrib/bsnmp/lib 
DB>> -I/usr/obj/ad1/usr/src/i386/legacy/usr/include /ad1/usr/src/usr.sbin/bsnmpd/gensnmptree/../../../contrib/bsnmp/gensnmptree/gensnmptree.c
DB>> /ad1/usr/src/usr.sbin/bsnmpd/gensnmptree/../../../contrib/bsnmp/gensnmptree/gensnmptree.c:66: 
DB>> stdint.h: No such file or directory
DB>> mkdep: compile failed
DB>> *** Error code 1
DB>> 
DB>> Stop in /ad1/usr/src/usr.sbin/bsnmpd/gensnmptree.
DB>> *** Error code 1
DB>> 
DB>> Stop in /ad1/usr/src.
DB>> *** Error code 1
DB>> 
DB>> Stop in /ad1/usr/src.
DB>> *** Error code 1
DB>> 
DB>> Stop in /ad1/usr/src.
DB>> 
DB>> Now here are the locations of stdint.h on my system:
DB>> [mike]/ad1/usr/src>locate stdint.h
DB>> /ad1/usr/include/machine/_stdint.h
DB>> /ad1/usr/include/stdint.h
DB>> /ad1/usr/include/sys/stdint.h
DB>> /ad1/usr/src/sys/alpha/include/_stdint.h
DB>> /ad1/usr/src/sys/amd64/include/_stdint.h
DB>> /ad1/usr/src/sys/arm/include/_stdint.h
DB>> /ad1/usr/src/sys/i386/include/_stdint.h
DB>> /ad1/usr/src/sys/ia64/include/_stdint.h
DB>> /ad1/usr/src/sys/powerpc/include/_stdint.h
DB>> /ad1/usr/src/sys/sparc64/include/_stdint.h
DB>> /ad1/usr/src/sys/sys/stdint.h
DB>> [mike]/ad1/usr/src>
DB>> 
DB>> It wants to pull from /usr/include.  I tested this by putting a soft link 
DB>> from /usr/include/stdint.h to /ad1/usr/include/stdint.h and it got past that 
DB>> one error to only error on another header file.  It is my understanding that
DB>> only header files from under (in my case)/ad1/usr/src should be needed to 
DB>> compile the world correct?
DB>> 
DB>> -Mike
DB>
DB>after my last cvsupdate, now im also suffering from this :-(,
DB>the problem is indeed in /usr/src/usr.sbin/bsnmpd/gensnmptree/gensnmptree.c,
DB>i simply removed the offending include and now it's at least cross compiling.

Removing the include is problematic because the program needs the fixed 
size integer types (uint32_t for example). The correct thing to get these 
is to include <stdint.h> (see 7.19 of C99). There appears to be another 
header defining these types that probably shouldn't do this.

I'm currently looking into properly getting tools/build/Makefile to 
install the necessary file into 
${MAKEOBJDIRPREFIX}/usr/src/{MACHINE}/legacy/include. That appears to be 
not easy, because stdint.h is a symbolic link to sys/stdint.h which in 
turn needs sys/_types.h, machine/_stdint.h which in turn needs 
machine/_types.h. Argh....

harti



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