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$>