Subject: Re: compiling 'config' failed with current.
To: Samuel.Hornus <Samuel.Hornus@crans.org>
From: Manuel Bouyer <bouyer@antioche.lip6.fr>
List: netbsd-users
Date: 05/18/2001 14:46:36
On Fri, May 18, 2001 at 01:31:26PM +0200, Samuel.Hornus wrote:
> On Thu, 17 May 2001, Manuel Bouyer wrote:
> 
> > On Thu, May 17, 2001 at 09:56:10PM +0200, Samuel.Hornus wrote:
> > >
> > > Hi, I just sup'd he whole sources
> > > Currently 1.5.1 B2m I wqnt to upgrade to current in order to get
> > > COMPAT_LINUX on macppc port.
> > >
> > > cd /usr/src/usr.sbin/config/
> > > make;
> > >
> > > fails....
> > > main.c:112: warning: implicit declaration of function `setprogname'
> >
> > hum, you need a new libc for this one, but before a new libc you need to
> > install  a new kernel ...
> >
> > Isn't there a binary shapshot of -current available ? This would save
> > some trouble ...
> > Alternatively I think you can build a -current kernel with 1.5.1
> > /usr/sbin/config. Or just comment out the call to setprogname() for now,
> > it's not that usefull in config(8)
> 
> Compiling the new kernel went OK.
> Now, 'make obj' fails because of some Makefiles (ex : /usr.bin/audio or
> .../ssh containing a target .WAIT, and make can't cd into it, (because it
> does not exist...) Is this a subtle message to me saying that I shall wait
> a bit to compile the rest of the system ? ;-) or... ?

you should read the file 'UPDATING' in at the root of the src tree.
You'll see that there is a bunch of programs to update before 'make build'.

I think that to update from 1.5.1 to -current you have to:
- rebuild and reinstall make. Now that you've installed the new mk files (by
  the 'make build' it may not work, but you can always use
  'make -f Makefile.boot'; this will produce a bmake binary that you can copy
   to /usr/bin/make
- rebuild and reinstall yacc
- do a 'make includes' in src/, then a
  'make MKSHARE=no MKLINT=no && make MKSHARE=no MKLINT=no install'
  in src/lib/libc to install a new libc
- rebuild and install lint (src/usr.bin/xlint)
- build and install mklocale

One this is done you should be able to do a 'make build'.

> 
> BTW : does 'cd /usr/src ; make build' actually replace the old system
> binaries with the newly created ?

Yes, unless DESTDIR is set.

--
Manuel Bouyer, LIP6, Universite Paris VI.           Manuel.Bouyer@lip6.fr
--