Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 May 2006 21:16:23 -0700
From:      "Kevin Oberman" <oberman@es.net>
To:        Dan Strick <strick@covad.net>
Cc:        freebsd-stable@freebsd.org, dan@mist.nodomain
Subject:   Re: old program compatibility with FreeBSD 6.1 
Message-ID:  <20060514041623.3EAEE45042@ptavv.es.net>
In-Reply-To: Your message of "Sat, 13 May 2006 19:40:35 PDT." <200605140240.k4E2eZtM001183@mist.nodomain> 

next in thread | previous in thread | raw e-mail | index | archive | help
> Date: Sat, 13 May 2006 19:40:35 -0700 (PDT)
> From: Dan Strick <strick@covad.net>
> Sender: owner-freebsd-stable@freebsd.org
> 
> [I may have missed some responses to my original posting because the
> "current" set of postings has been cleaned out but not yet installed
> in the mailing list archive.]
> 
> I just installed FreeBSD 6.1, selecting "All" in the distributions
> selection menu, and discovered that the compat* distributions are
> no longer part of the standard distribution.  I searched the RELNOTES
> and ERRATA for both 6.0 and 6.1 and found no mention of this.
> 
> I have received email from someone (apparently a copy of one of the
> postings to freebsd-stable that I didn't see) suggesting that I install
> /usr/ports/misc/compat5x.
> 
> Is this the official work-around?  I see that there are also compat4x
> and compat3x ports in /usr/ports/misc.  Is 1x, 20, 21, and 22
> compatibility support gone forever?  (Not that I would miss it. I only
> need 4x and 5x compatibility.)

This is not a workaround. It is simply how using executables linked
against old versions of FreeBSD are made to run on newly installed
systems. A new install lacks any of the shared libraries that old
executables were linked against and the reason for the new version on
the sharable is that the ABI changed so that, if an old executable tried
to use the new version of the sharable, it might not work correctly.

The solution is to place old versions of the standard libraries into a
port. If you install the port, you will get all of the old libraries
installed where the loader will find them and the old executables will
work. (To make this work, you need to also ad the line to rc.conf to
ldconfig that directory, but I think the port may take care of this.)

Note that this is a different situation from a normal upgrade where the
old libs already are present and available in the compat directory.
-- 
R. Kevin Oberman, Network Engineer
Energy Sciences Network (ESnet)
Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab)
E-mail: oberman@es.net			Phone: +1 510 486-8634



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060514041623.3EAEE45042>