Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Jun 2013 16:51:01 -0700
From:      "Tony Hain" <tony@hain-global-consulting.com>
To:        <doc@FreeBSD.org>
Subject:   broken instructions for buildkernel
Message-ID:  <023e01ce6d47$dab08470$90118d50$@hain-global-consulting.com>

next in thread | raw e-mail | index | archive | help
The steps in
http://www.freebsd.org/doc/en/books/handbook/kernelconfig-building.html
are simply broken/incomplete. This sequence goes straight from 'get the src'
to 'make buildkernel'. Doing that to build 10-current on a 9.1 fresh install
results in "no previous prototype for yyparse". Searching for that error
string shows it has been a recurring problem; & returns comments like   :::
"you must do make buildworld first" :::
If buildworld is a prereq, why isn't that in the instruction sequence? Even
if it is only required once, on a fresh install it should be possible to
look at the FreeBSD docs and build a custom kernel without hitting errors
and having to search for hints. 

On a separate but related note: the instruction to 'cp GENERIC
/root/kernels/MYKERNEL' seems
pointless/dated/waste-of-disk-space/likely-to-result-in-confusion-over-time.
Direct editing of the entirety of a copy of GENERIC makes it harder to
figure out what changes were made specifically for local functions later
when GENERIC might have changed in an update. In searching for Hyper-V
related builds I stumbled across the mechanism of using 'include' to pull in
a current GENERIC, then isolate all local changes in the system specific
file. It seems like this would be a better example to be using for the main
doc. Something like

# FreeBSD kernel conf local customizations
#                edits to this file allow the GENERIC file to remain
untouched
#
include		/usr/src/sys/PLATFORM/conf/GENERIC

# target kernel name
ident		MYKERNEL

# GENERIC has debug symbols set 
makeopts	MODULES_OVERRIDE=""

# PPS support enable
options		PPS_SYNC



Tony





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?023e01ce6d47$dab08470$90118d50$>