Subject: Re: Frustration
To: None <joe@mediaone.net>
From: Mike Long <mikel@shore.net>
List: current-users
Date: 03/17/1998 18:44:12
>From: Joseph Sarkes <joe@js.ne.mediaone.net>
>Date: Sun, 15 Mar 1998 06:57:55 -0500 (EST)
>
>Well, i am now totally frustrated and confused. Every time
>I try to build the current tree it dies somewhere and i have
>to reinstall the 1.3 sources to get an operational system.
>
>HOW do you do a make build without trashing your system?

The solution to your troubles is to follow these rules religiously:

1) Always have the COMPAT_ option for the most recent major release in
   your kernel config.  Since the last major release (i.e. not a patch
   release) was 1.3, you should have 'options COMPAT_13' in your kernel
   config.
2) Rebuild the kernel and reboot before building anything (*) in
   userland.

Why?  New syscalls are frequently added to the NetBSD kernel.  If you
build and install a new libc without building a current kernel first,
then userland binaries start trying to use syscalls which don't exist
in the kernel.  Much lossage results.  You need the COMPAT_ option so
that your new kernel continues to support the syscall set used by your
old libc while you rebuild it.

(*) You may need to rebuild some tools in the tree (most often
    config(8), but there may be others as well) before you can build a
    new kernel successfully.  Don't install headers or libraries
    before doing this.  Usually we try to post announcments to
    current-users about this, but....

-- 
Mike Long <mikel(at)shore.net>                http://www.shore.net/~mikel
"Every normal man must be tempted at times to spit on his hands,
hoist the black flag, and begin slitting throats." -- H.L. Mencken