*BSD News Article 50787


Return to BSD News archive

#! rnews 5068 bsd
Newsgroups: comp.unix.bsd.netbsd.misc
Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!simtel!lll-winken.llnl.gov!venus.sun.com!nntp-hub2.barrnet.net!pacbell.com!amdahl.com!juts.ccc.amdahl.com!azcb0
From: azcb0@ccc.amdahl.com (Alistair G. Crooks)
Subject: Re: NetBSD-current compilation - how
Message-ID: <1995Sep7.104220.17651@ccc.amdahl.com>
Reply-To: azcb0@JUTS.ccc.amdahl.com (Alistair G. Crooks)
Organization: Amdahl Corporation, Sunnyvale CA
References: <42irqg$mqn@eng_ser1.erg.cuhk.hk>
Date: Thu, 7 Sep 1995 10:42:20 GMT
Lines: 107

In article <42irqg$mqn@eng_ser1.erg.cuhk.hk> CHAN Yiu Wah <clarence> writes:
>Content-Transfer-Encoding: 7bit
>X-Mailer: Mozilla 1.1N (X11; I; SunOS 4.1.4 sun4m)
>X-URL: news:comp.unix.bsd.netbsd.misc
>
>Hello,
>
> I just download the NetBSD-current source from ftp.iastate.edu and
> want to compile the new kernel.  Can anyone kindly tell me how to do
> it.  I want to test the ccd driver under i386 platform.  Thanks.

Remember to subscribe to the current-users@netbsd.org mailing list, if
you're running -current.

The following instructions have helped other people upgrade to -current

[The last update of these instructions was at Wed Aug  9 16:58:24 BST 1995]

[Remember to make yourself a new config (not config.old) kernel config file.]
[Make sure you have COMPAT_10 as part of your kernel config options.]
[This assumes that the -current source is in /usr/src]

# Hopefully, this will do away with the subsequent mkdir's below... - agc
# from Mark Willey (mwilley@mwilley.sc.intel.com)
(cd /usr/src/etc; make DESTDIR=/ distrib-dirs)

(cd /usr/src/usr.sbin/config ; make && make install && make cleandir)
# if you don't do this, config of your kernel config file will
# fail with errors in files.i386

(cd /usr/src/gnu/usr.bin/gas ; make && make install && make cleandir)
# if you don't do this, you won't be able to build locore.s, with
# errors about cpuid instruction not found

(cd /sys/arch/i386/conf ; config MYKERNEL)
(cd /sys/arch/i386/compile/MYKERNEL ; make depend && make)
# copy  new kernel to /, and boot off it

(cd /usr/src/share/mk ; make install)
# if you don't do this, you'll get errors building gcc, when it
# doesn't know how to make the manual pages (don't know how to make gcc.0)

(cd /usr/src/gnu/usr.bin/gcc2 ; make && make install && make cleandir)

(cd /usr/src/usr.bin/rpcgen ; make && make install && make cleandir)
# this makes the new (ANSI-C) rpcgen and installs it. Otherwise you'll
# have problems with any programs that use it, like rpc.rstatd etc

(cd /usr/src/lib/csu; make && make install)
# Otherwise ld will fail not finding scrt0.o
# from David Jones (dej@eecg.toronto.edu)

# Bernd Wiserner says that the ld.so that will be built next will
# work only with libc.so.12.0, not with libc.so.12.3
# His instructions to make a working ld.so follow:
# Do NOT run ldconfig while doing the following 7 lines ...
(cd /usr/src/include ; make && make install)
cp -p /usr/libexec/ld.so /usr/libexec/ld.so.good
(cd /usr/src/gnu/usr.bin/ld ; make && make install && make cleandir)
cp -p /usr/libexec/ld.so.good /usr/libexec/ld.so
(cd /usr/src/lib/libcurses ; make && make install)
# otherwise libterm won't be made correctly - invalid prototype
(cd /usr/src/lib ; make && make install && make cleandir)
# Then build ld.so again ...
(cd /usr/src/gnu/usr.bin/ld ; make && make install && make cleandir)  
# Thanks, Bernd...

# it was at this stage that I got REALLY fed up with the
# sh: warning: running as root with dot in PATH
(cd /usr/src/bin/sh ; make && make install &&  make cleandir)

# and now back to the beginning and make the world
(cd /usr/src/bin ; make && make install && make cleandir)
(cd /usr/src/sbin ; make && make install && make cleandir)

mkdir /usr/share/doc/usd/13.viref
# otherwise "make install" in /usr/src/usr.bin will fail because
# the destination directory doesn't exist - from Tom Thai

# if you're using the obj directory hierarchy, use
(cd /usr/src/usr.bin/lex ; cp initscan.c obj/scan.c)
# otherwise (i.e. no obj directory hierarchy)
(cd /usr/src/usr.bin/lex ; cp initscan.c scan.c)
# if you don't, then lex won't be built

# Bootstrap xlint
mkdir -p /usr/libdata/lint
(cd /usr/src/usr.bin/xlint ; make ; make install ; make ; make install)

(cd /usr/src/usr.bin ; make && make install && make cleandir)
(cd /usr/src/usr.sbin ; make && make install && make cleandir)
(cd /usr/src/libexec ; make && make install && make cleandir)
(cd /usr/src/gnu ; make && make install && make cleandir)
(cd /usr/src/share ; make && make install && make cleandir)

mkdir /usr/share/doc/usd/30.rogue /usr/share/doc/usd/31.trek
# otherwise "make install" in /usr/src/games will fail
# actually, last time I tried this, the dirs were already there - agc

(cd /usr/src/games ; make && make install && make cleandir)

Cheers,
Alistair
--
Alistair G. Crooks (agc@uts.amdahl.com)			   +44 125 234 6377
Amdahl European HQ, Dogmersfield Park, Hartley Wintney, Hants RG27 8TE, UK.
[These are only my opinions, and certainly not those of Amdahl Corporation]