Subject: Re: dl* functions on ELF platforms
To: Jason Thorpe <thorpej@nas.nasa.gov>
From: Kevin P. Neal <kpneal@pobox.com>
List: tech-userlevel
Date: 03/01/2000 20:30:29
On Wed, Mar 01, 2000 at 10:05:27AM -0800, Jason Thorpe wrote:
> On Wed, 01 Mar 2000 22:26:51 +0900
> "T.SHIOZAKI" <tshiozak@astec.co.jp> wrote:
>
> > There is probably not much difference whether provide libdl or not.
> > However, I don't prefer to increase the number of libraries, since
> > it may make maching problem. If libc depends on libdl, it seems not
> > necessary to separate into libdl. And, I guess that if we provide libdl,
> > then we should change the soname and/or the major revision number of libc.
>
> Well, I'm buy your argument that they should be in libc.
>
> Anyone have any real objections?
Quick question:
Would these functions be available in both the static and dynamic
versions of libc?
Here's my issue (and perhaps it doesn't apply here):
At my job I'm responsible for the Apache builds (+mod_ssl,+perl, +custom
afs client code, etc etc). I like to do the builds static because it makes
lots of things easier (on HP-UX: debugging, debugging, more debugging,
and the usual benefits of static linking. Solaris also).
I'm annoyed that I can't get a totally static build because of dl*
functions in some library (I can't remember offhand, and I link in
something like 20 libraries...). I have to pull schenanegans to
get my servers to build with this motley list of libraries, giving
flags to cut static/dynamic linking on/off, in order to get a build.
I mean, really now, should this be in a build:
-lc -lBSD -Wl,dynamic -lc -Wl,static
That's gross. (libBSD on HP-UX pulls in compat functions needed by AFS,
but I have to link libc in first so things like stat() aren't subverted.)
I hate it when static and dynamic versions of libraries have different
functions.
I hope this sort of thing won't be an issue in NetBSD.
--
Kevin P. Neal http://www.pobox.com/~kpn/
"Nonbelievers found it difficult to defend their position in \
the presense of a working computer." -- a DEC Jensen paper