Subject: Re: dl* functions on ELF platforms
To: Noriyuki Soda <firstname.lastname@example.org>
From: Todd Vierling <email@example.com>
Date: 02/29/2000 14:57:31
On Wed, 1 Mar 2000, Noriyuki Soda wrote:
: That does describe the reason why dl* symbols are included in crt0.
: But doesn't describe the reason why dl* symbol definitions cannot be
: moved from crt0 to libc.
: As the orignal mail describes, currently libc functions cannot call
: dlopen(3) and related functions on ELF platforms.
: Please note that locale(3) implementation have to call dl*(3)
: functions (like commercial UNIXes).
: What is the best way to solve this problem?
1. Follow Solaris. Put the dl* stubs in a "libdl" used only by libc.so
(libdl would not be used by the static libc.a).
2. Make a libc.so with dl* stubs, but ensure that they are not in libc.a.
In both cases, the locale(3) implementation must have a version in libc.a
that does not require dlopen()... probably a stub.
-- Todd Vierling (firstname.lastname@example.org)