buildworld not using proper build environment

Ruslan Ermilov ru at freebsd.org
Mon Aug 22 09:08:04 GMT 2005


On Sun, Aug 21, 2005 at 09:55:58PM -0700, Kevin Oberman wrote:
> > Date: Sun, 21 Aug 2005 09:16:42 +0200
> > From: Stefan Farfeleder <stefan at fafoe.narf.at>
> > 
> > I think the problem is that the files in lib/libedit include histedit.h
> > with "" instead of <>.  This works for NetBSD because they have
> > histedit.h in the same directory.  -I. should be dropped from CFLAGS
> > probably too.  I once noticed a problem that #include <term.h> picks up
> > the local term.h instead of the one in [..]/tmp/usr/include.
> 
> Dropping -I. breaks 'make depend', so that's not a good way to go. I
> fails to find a LOT of stuff.
> 
> I really thought that the <histedit.h> would fix it, but it does not
> help. I edited all occurrences of "histedit.h" to <histedit.h>, but
> .depend still shows that the files in /usr/obj/usr/src/tmp are used.
> 
That's fine, it's what should be used, /usr/obj/usr/src/tmp/usr/include/histedit.h.
"diff /usr/obj/usr/src/tmp/usr/include/histedit.h /usr/src/include/histedit.h"
should be empty.

> And
> those files are used for everything. All header files listed in .depend
> are in /usr/includeand none are in /usr/obj/usr/src/tmp/include.
> 
That means that for some reason "stage 4.1: building includes" wasn't
run or did something odd.

> I then looked at several other .depend files and I don't find any
> indication that the new header files are ever used. 
> 
> Is my system somehow broken? I have completely removed /usr/obj and done
> a fresh cvsup. I don't seem to find any stale files and would not expect
> to on a system that was a fresh install three weeks ago. I'd just love
> to find where in the makefiles the include environment is set to pull
> header files from the build tree instead of the existing system.
> 
The magic is in Makefile.inc1, TOOLS_PREFIX=${WORLDTMP}.  The cross-tools
are built with this as a prefix, causing the standard headers to be looked
up in ${WORLDTMP}/usr/include, libraries in ${WORLDTMP}/usr/lib and so on.

See if there's something odd in your /etc/make.conf, or in your command
line.  Or put the compressed output (stdout+stderr) from running the
"make buildworld" command available somewhere for download.


Cheers,
-- 
Ruslan Ermilov
ru at FreeBSD.org
FreeBSD committer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20050822/0a3d6358/attachment.bin


More information about the freebsd-current mailing list