From owner-freebsd-current Sun Dec 17 10:54:37 2000 From owner-freebsd-current@FreeBSD.ORG Sun Dec 17 10:54:34 2000 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from cae88-102-101.sc.rr.com (cae88-102-101.sc.rr.com [24.88.102.101]) by hub.freebsd.org (Postfix) with ESMTP id F17AA37B400 for ; Sun, 17 Dec 2000 10:54:33 -0800 (PST) Received: (from dmaddox@localhost) by cae88-102-101.sc.rr.com (8.11.1/8.11.1) id eBHIsVR09927; Sun, 17 Dec 2000 13:54:31 -0500 (EST) (envelope-from dmaddox) Date: Sun, 17 Dec 2000 13:54:31 -0500 From: "Donald J . Maddox" To: Stephen McKay Cc: "Donald J . Maddox" , current@FreeBSD.ORG Subject: Re: Is compatibility for old aout binaries broken? Message-ID: <20001217135431.C9721@cae88-102-101.sc.rr.com> Reply-To: dmaddox@sc.rr.com Mail-Followup-To: Stephen McKay , "Donald J . Maddox" , current@FreeBSD.ORG References: <20001216161756.A6370@cae88-102-101.sc.rr.com> <200012171658.eBHGwGW24109@dungeon.home> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <200012171658.eBHGwGW24109@dungeon.home>; from mckay@thehub.com.au on Mon, Dec 18, 2000 at 02:58:16AM +1000 Return-Receipt-To: dmaddox@sc.rr.com Sender: dmaddox@cae88-102-101.sc.rr.com Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Ok, thanks for a very enlightening explanation :) Under the circumstances, it seems silly to have aout conpat bits installed at all, seeing as how they cannot work. Like you, I normally upgrade from source -- This box has been -current ever since 2.0.5 or so was -current, but I had to reinstall from scratch a while back by installing 4.2-RELEASE and then cvsupping back to -current, so I guess I lost my working aout ld.so in the process. Bummer :( On Mon, Dec 18, 2000 at 02:58:16AM +1000, Stephen McKay wrote: > On Saturday, 16th December 2000, "Donald J . Maddox" wrote: > > >The other day, on a whim, I decided to try running an old binary > >of SimCity (the same one found in the 'commerce' directory on > >many FBSD cds), and it failed in a odd way... > > You and I may be the only people in the world that run old binaries. > This has been broken for new users for some time. :-( Those of us > upgrading from source have been immune to this problem, because we > retain the old a.out ld.so binary. > > >/usr/libexec/ld.so: Undefined symbol "___error" called from sim:/usr/X11R6/lib > >/aout/libX11.so.6.1 at 0x20160644 > > When errno became a function that returns a pointer (previously it was > a simple integer variable), recompiled libraries became incompatable with > old binaries. So, I hacked the a.out loader (ld.so). The fix was in 3.0. > Well, Nate called it a horrible hack, so maybe I should say "the hack was > in 3.0". > > >Am I overlooking something obvious here, or is something actually > >broken with respect to running old aout binaries? > > I found that rtld-aout won't compile. That's kinda broken. > (It's probably something simple. Looks like the a.out version of > a pic library just isn't around any more). I'll try harder later. > What's certain is that it isn't compiled by default. > > I poked about with my old FreeBSD CD collection and found that > version 3.0 through 3.2 have a fully functioning (fully hack enabled) > ld.so, but an older binary has been substituted in 3.3 and onward, > including 4.0 and 4.1, and most likely 4.2 also. > > I can only guess that some anonymous release engineer (nobody we know :-) > picked the wrong CD at some point to get the master copy of ld.so once > it stopped compiling. (Or at least stopped being easily compiled.) > > Ideally, rtld-aout would be compiled fresh for every release. Until then, > you can repair your system by retrieving ld.so from a 3.3 CD (in the > compat22 section), or from a 3.2 live filesystem CD. > > Stephen. > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-current" in the body of the message To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message