*BSD News Article 16465


Return to BSD News archive

Newsgroups: comp.os.386bsd.development
Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!agate!howland.reston.ans.net!darwin.sura.net!ra!tantalus.nrl.navy.mil!eric
From: eric@tantalus.nrl.navy.mil (Eric Youngdale)
Subject: Re: SHARED LIBRARIES - THE END
Message-ID: <C7Jy17.FCt@ra.nrl.navy.mil>
Sender: usenet@ra.nrl.navy.mil
Organization: Naval Research Laboratory
References: <PC123.93May22195506@bootes.cus.cam.ac.uk> <HAGAN.93May24115502@freya.cs.umass.edu> <1993May24.174302.4975@gmd.de>
Date: Mon, 24 May 1993 22:19:54 GMT
Lines: 50

In article <1993May24.174302.4975@gmd.de> veit@mururoa.gmd.de (Holger Veit) writes:
>As you appear to know Linux, you should also know that in particular 
>the shared libraries are one of the worst rats nests available, since 
>they emerged over several incompatible stages. So, if you get some

	About 8 months ago, I would have sadly had to agree with you.  Things
have changed a lot since then, however, and these "arguments" against the linux
shared libraries are very stale indeed.

	The problem of "incompatible stages" was solved early last September
with libc - we have not had an incompatible release of libc since then, and
there have been a number of changes in the interim period.  The problem of
"incompatible stages" was solved in a more general fashion last February with
the release of version 3.0 of the X libraries, and this occurred at the same
time as the addition of a form of dynamic linking and the release of a set of
tools for building sharable libraries that generally makes the task fairly
painless.  I might add that the versions of libc that can be dynamicly linked
to are compatible with the binaries linked to the libc that was released last
September.

	There are a number of other sharable libraries such as XView (free) and
Motif (for which you must pay).  There is also a drop in replacement for libXaw
which was compiled from the Xaw3d code - the same user binaries will run with
either shared library, but you just set a symlink to select which one should be
used (in the most recent version, non-suid programs can load their libraries
using an environment variable to help locate the libraries).

>Insiders like me and many others who play with 386bsd since the earliest
>days know what is going on in the system and know which executable
>needs which shared library, and know about troubleshooting in case, but
>incompatible software is a problem for the large number of not so
>experienced people. This is only the most obvious problem with
>shared libraries; a different one is the ease of creation, compatibility
>to and consistency with the rest of the system are some others.

	I agree with all of this.  Idiot-proofing all around is the name of the
game.

-Eric

P.S. 	I might add that because of the flames that the linux libraries
have received (and still receive) from the c.o.3.* newsgroups (or c.o.3
activists), my first reaction to this thread was to simply keep my mouth shut
and not offer you people the benefit of any of our experiences.  Watching your
latest attempt burn to death seems to have softened my heart somewhat, and
hence this post.
-- 
"When Grigor Samsa woke up one morning from unsettling dreams, he
found himself changed in his bed into a monstrous vermin."
					-F. Kafka