[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: libltdl should not always use LT_GLOBAL

From: Alexandre Oliva
Subject: Re: libltdl should not always use LT_GLOBAL
Date: 29 Mar 2004 14:29:04 -0300
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3

On Mar 29, 2004, Bob Friesenhahn <address@hidden> wrote:

> I agree with most statements in your response, but nowhere do you
> address the actual issue, which is if libltdl should export all module
> symbols (and libraries the module depends on) with global scope
> (LT_GLOBAL) when a module or shared library is loaded such that these
> symbols may be used to resolve symbols required by libraries or
> modules loaded later.

IMHO it should, precisely because you can't do better than that in
case the user chooses to build the module you want to dlopen as a
static library, so we have to dlpreopen it, at which point it is

> Ideal loadable module behavior is that the program may locate and
> access module symbols without the module extending/corrupting the
> run-time symbol space of the program.

I can see cases in which this is desirable, and I can see cases in
which a global namespace is desirable.  Heck, that's why dlopen offers
that as an option.

Unfortunately, libtool's portable abstraction interface can't
guarantee the behavior you regard as ideal.  So, in order to get
developers to remove any such assumptions as early as possible, per
the principle stated in my previous e-mail, libltdl should use
RTLD_GLOBAL by default, or even force it to be enabled.

Alexandre Oliva             http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer   address@hidden, gcc.gnu.org}
Free Software Evangelist  address@hidden, gnu.org}

reply via email to

[Prev in Thread] Current Thread [Next in Thread]