Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Jun 2013 23:38:46 +0200
From:      Remko Lodder <remko@FreeBSD.org>
To:        Tony Hain <tony@hain-global-consulting.com>
Cc:        doc@freebsd.org
Subject:   Re: broken instructions for buildkernel
Message-ID:  <8C5019CC-4959-40D5-B017-6F19E4CBD959@FreeBSD.org>
In-Reply-To: <02c901ce6dec$1b330140$519903c0$@hain-global-consulting.com>
References:  <023e01ce6d47$dab08470$90118d50$@hain-global-consulting.com> <CA%2BtpaK1xidv5ukt_7gWwhRaUzCO44x9Txk6wxsJBP905LWbBiQ@mail.gmail.com> <02c901ce6dec$1b330140$519903c0$@hain-global-consulting.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On Jun 20, 2013, at 9:26 PM, Tony Hain <tony@hain-global-consulting.com> =
wrote:

> Thanks Adam.=20
>=20
> I had been on the page you sent for the 9.0 to 9.1 upgrade of this =
machine.
> My intent was not to upgrade the machine to 10.0, at this point it was =
just
> to build the kernel for a new VM. Granted I am not the most engrained =
in
> FreeBSD procedures, but to me that leads to the "building a kernel" =
page.=20
>=20
>=20
>=20
> While buildworld may not be a declared prereq, something in that =
process
> "fixes" a missing definition. No matter which distro of 10.0 I tried =
to
> build it would always exit on a missing prototype for yyparse, but =
after
> buildworld it just ran to completion. That sounds like a prereq to =
me...
> Even if it is not, a hint on one or both of the pages that reference
> building a kernel, about yyparse failures being fixed by buildworld =
would
> save people frustration and time. If I was the first to stumble over =
this, I
> wouldn't have been able to find discussion about it on the web, and =
still
> wouldn't know how to fix it.=20
>=20

If you read the documentation link that Adam send you specifically on =
this page:
http://www.freebsd.org/doc/handbook/makeworld.html
=20

it is demonstrated and advised why things happen:

	=95 make buildworld

This first compiles the new compiler and a few related tools, then uses =
the new compiler to compile the rest of the new world. The result ends =
up in /usr/obj.

	=95 make buildkernel

This uses the new compiler residing in /usr/obj in order to protect =
against compiler-kernel mismatches.

if you upgrade from x to y (9 to 10 in this case) you must be sure that =
the toolchain and buildtools are up to date, thus you need to make =
buildworld even though
you do not plan on using it (note that you might get different results =
then you might expect, world and kernel needs to be aligned up as =
possible to ensure
that they understand eachother).

There is no need to adjust the documentation for the specific yyparse =
step, in the tuture there will be other things that break if people do =
not follow the rules
described.

Thanks
Remko

--=20
/"\   With kind regards,			| remko@elvandar.org
\ /   Remko Lodder			| remko@FreeBSD.org
X    FreeBSD					| =
http://www.evilcoder.org
/ \   The Power to Serve		| Quis custodiet ipsos custodes




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8C5019CC-4959-40D5-B017-6F19E4CBD959>