Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Jul 1998 20:02:49 -0400
From:      Matthew Patton <patton@sysnet.net>
To:        Travis Cole <tcole@nihilist.org>
Cc:        freebsd-current@FreeBSD.ORG
Subject:   SOLUTION! 2.2.6-Release to -current
Message-ID:  <l03110703b1c876232419@[192.168.1.10]>
In-Reply-To: <19980708114832.B31417@nihilist.org>
References:  <199807081124.VAA23031@cimlogic.com.au>; from John Birrell on Wed, Jul 08, 1998 at 09:24:16PM %2B1000 <4648.899893623@time.cdrom.com> <199807081124.VAA23031@cimlogic.com.au>

next in thread | previous in thread | raw e-mail | index | archive | help
Since I started this most recent round of posts on this infernal question,
I am most happy to report that I have a working solution (others may
exist). I wish somebody would try my solution again from a completely clean
box so we can confirm it wasn't a fluke. Unless contrary evidence crops up,
FAQ maintainers and buildworld webpage authors feel free to post the
solution.

somebody said:
	>cd /usr/src
	>make -m /usr/src/share/mk world (or buildworld)

You'd think this would work but as others can attest to, it doesn't. I
can't believe we've all fatfingered the command. If you are using
2.2.6-STABLE or some previous incarnation of -current, this may work just
fine.

BTW, what's up with the following logic?
 >.if (!make(world)) && (!make(buildworld)) && (!make(installworld))
 >.MAKEFLAGS:=    -m ${.CURDIR}/share/mk ${.MAKEFLAGS}
 >.endif
if we're doing any of the *world, don't we WANT to be using the mk files in
/usr/src/share/mk?


	>cd /usr/src
	>make -m buildworld MACHINE_ARCH="i386" BINFORMAT=aout

is close but does *NOT* work from -RELEASE. You will get messages about the
linker not finding "___error which was referenced from the text segment."
The problem is that a library is old. I don't know which one. Anyone know?
Rebuilding the libs solves it.

So, (drumroll) this is how you build -current from 2.2.6-RELEASE. I make no
promises about any earlier version. FWIW, I adopted the build procedure we
use in OpenBSD to get things rolling.

1. cvsup src-all (8pm EST 9 July)
2. cd /usr/src/share/mk		# not much point NOT to do this, also
obviates the need for the "-m /usr/src/share/mk" directive
3. make MACHINE_ARCH="i386" BINFORMAT=aout install
4. cd /usr/src/include		# old sources can be dangerous
5. make MACHINE_ARCH="i386" BINFORMAT=aout install
6. cd /usr/src/lib		# nukes the ___error problem
7. make MACHINE_ARCH="i386" BINFORMAT=aout
8. make MACHINE_ARCH="i386" BINFORMAT=aout install
 *caution* a couple of make files are broken, see notes
9. cd /usr/src
10. make MACHINE_ARCH="i386" BINFORMAT=aout buildworld
11. wait an eternity (even on a PPro233 with 128mb of RAM), watch a movie
12. make MACHINE_ARCH="i386" BINFORMAT=aout installworld
13. quick, compile a new kernel

Notes:
/usr/src/lib/libtcl/Makefile is broken in the beforeinstall: target. The
'for' loop with argument 'e' that's supposed to install the *.tcl files
from the library directory, constructs a command line for install that it
barfs on. Make quits with error 64. Do it by hand or simply comment out the
section. It's not crucial. I put in a sendbug. Hopefully it went thru.

/usr/src/lib/libc/gen/Makefile tries to install a file lockf.3.gz in the
man(3) section. I deleted the entry from the list though lockf.3 does
exist. Will have to look at this again.


To think I went through all this pain just to get a SMP kernel so I can
crack rc5des faster. My word of advice: if you want SMP, save yourself the
hassle and start with a -current snapshot. *whew*

--------
"If I were called upon to identify briefly the principal trait of the 20th
Century, here too I would be unable to find anything more precise and pithy
than to repeat once again: Men have forgotten God."
  - Aleksander Solzhenitsyn



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?l03110703b1c876232419>