Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 Nov 2000 22:37:31 -0800
From:      "Crist J . Clark" <cjclark@reflexnet.net>
To:        gerti-bsd@bitart.com
Cc:        Alfred Perlstein <bright@wintelcom.net>, erich alfred heine <eheine@students.uiuc.edu>, freebsd-questions@FreeBSD.ORG, freebsd-newbies@FreeBSD.ORG
Subject:   Re: More kernel compile problems
Message-ID:  <20001118223731.E38109@149.211.6.64.reflexcom.com>
In-Reply-To: <20001119050038.10536.qmail@camelot.bitart.com>; from gerti@bitart.com on Sat, Nov 18, 2000 at 11:00:38PM -0600
References:  <Pine.GSO.4.10.10011181716010.26478-100000@ux7.cso.uiuc.edu> <20001118153531.I18037@fw.wintelcom.net> <20001119050038.10536.qmail@camelot.bitart.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Nov 18, 2000 at 11:00:38PM -0600, Gerd Knops wrote:
> Alfred Perlstein wrote:
> > * erich alfred heine <eheine@students.uiuc.edu> [001118 15:25] wrote:
> > > Im trying to compile my kernel, and I have been getting some pretty
> > > wierd errors. Im running a PII box, with a 3C900 network card, a
> > > Matrox Millenium G200 vid card, a atapi zip drive, an atapi CD, and
> > > 2 ide hard disk drives. I have included the errors and my config
> > > file. If you need more info, ill provied what i can.
> >
> > This is a symptom of not reading /usr/src/UPDATING
> >
> > > src/sys/i386/i386/locore.s
> > > /tmp/ccQE4325.s: Assembler messages:
> > > /tmp/ccQE4325.s:1743: Error: .space specifies non-absolute value
> > > /tmp/ccQE4325.s:2454: Error: undefined symbol L0^A in operation
> > > setting PTmap
> > > /tmp/ccQE4325.s:2454: Error: undefined symbol PDRSHIFT in operation
> > > setting PTma
> >
> 
> Actually I can understand the confusion, and it has to do with the  
> dreaded new kernel build method:
> 
> A fresh install (I just did this with 4.2 beta) is not able to build a  
> kernel using the 'make buildkernel' method without previously doing a  
> 'make buildworld'.

That's the whole point of buildkernel. It uses the newly built world,
by default in /usr/obj, instead of the currently installed
userland. It gets around a lot of back compatibility issues when
upgrading.

> This is rather counter-productive, as it forces anyone who wants to  
> customize the kernel to also to a (superfluous) make buildworld.

No, it does not.

> Yes, the 'old' method of building a kernel works, but that method is  
> depriciated.

It is not deprecated for rebuilding a kernel with the same sources
that were used to build the current world. It _is_ depricated for
upgrading, i.e. it is not guaranteed to work if you've changed your
sources.

For example, if you get a RELEASE CD and want to just want to
customize your kernel with the source that comes on the CD, go ahead
and do the 'old' manual kernel build and install. However, if you
CVSup to STABLE, you will need to do the buildworld and buildkernel
step up.

> This should either be fixed or at the very least mentioned in  
> '/usr/src/UPDATING'.

Actually, I think the buildkernel target could check if any buildworld
was recently attempted at all and exit with a helpful error.
-- 
Crist J. Clark                           cjclark@alum.mit.edu


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?20001118223731.E38109>