Date: Mon, 23 Apr 2001 15:16:08 -0700 From: Peter Wemm <peter@wemm.org> To: Bruce Evans <bde@zeta.org.au> Cc: Mart Norman <mart@estnet.ee>, freebsd-current@FreeBSD.ORG Subject: Re: upgrading from 3.0 to 4.3 Message-ID: <20010423221608.165E038FC@overcee.netplex.com.au> In-Reply-To: <Pine.BSF.4.21.0104240728410.8931-100000@besplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Bruce Evans wrote: > On Mon, 23 Apr 2001, Mart Norman wrote: > > > Hi! > > > > I'm trying to upgrade from 3.0 to 4.3 but make buildworld fails > > > > cc -O -pipe -I. -I/usr/src/usr.sbin/config -Wall -Wunused > > -Wmissing-prototypes -Wredundant-decls > > -I/usr/obj/usr/src/i386/usr/include -static -o config config.o main.o > > lang.o mkioconf.o mkmakefile.o mkheaders.o mkoptions.o -ll > > main.o: In function `main': > > main.o(.text+0x12a): undefined reference to `strlcpy' > > main.o(.text+0x234): undefined reference to `strlcpy' > > main.o(.text+0x249): undefined reference to `strlcat' > > mkoptions.o: In function `tooption': > > mkoptions.o(.text+0x540): undefined reference to `strlcpy' > > mkoptions.o(.text+0x573): undefined reference to `strlcpy' > > mkoptions.o(.text+0x59e): undefined reference to `strlcpy' > > *** Error code 1 > > > > Stop. > > Someone broke buildworld by putting `config' in bootstrap-tools although > `config' is not portable enough to be put there. I have been tempted to work around this, but when I had the same task (ie: upgrade 3.0-CURRENT from Dec 98 -> 4.2-stable) I discovered that there is a lot more that is broken. > > my /etc/make.conf looks like this: > > > > USA_RESIDENT=NO > > CFLAGS= -O -pipe > > NOPROFILE= true > > NO_OPENSSH= true # do not build OpenSSH > > NO_OPENSSL= true # do not build OpenSSL (implies NO_OPENSSH) > > > > > > Any hints what should i do to make buildworld successful? > > Start by deleting usr.sbin/config from bootstrap-tools. You won't be > able to build any kernels until the new world is installed, and this > may cause further problems. Dont forget -DNO_PERL. 'installworld' will destroy your system as just about every single application will fail with a SIGSYS due to signal calls. I got around this by building a kernel elsewhere (basically a slightly stripped GENERIC), booting that, and then doing something like: make -k buildworld; make -k installworld, then repeating. I think the only path that we "officially" support is 3.x -> 3.4-stable -> 4.0-R -> 4.x-stable. If one has a lot of persistance (and patience) anything can be done. I did 3.0-CURRENT -> 4.2-RC on a very very slow link (2000ms+ ping times) to a remote corner on the other side of the planet, on a slow machine (486), no serial console, no remote power and 12-hour turnaround if somebody needed to physically. I think the only reason I survived was because I run a 4.2-RC kernel with the 3.0-current userland for the duration of the build. > Bruce Cheers, -Peter -- Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au "All of this is for nothing if we don't go to the stars" - JMS/B5 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010423221608.165E038FC>