[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: libltdl should not always use LT_GLOBAL
From: |
Bob Friesenhahn |
Subject: |
Re: libltdl should not always use LT_GLOBAL |
Date: |
Mon, 29 Mar 2004 12:35:04 -0600 (CST) |
On 29 Mar 2004, Alexandre Oliva wrote:
> 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
> global.
This is a convincing argument but there are drawbacks:
o Much of the value (firewalling) obtained by using
dynamically loadable modules is lost.
o Programs are likely to consume more resources and initialize
more slowly due to the larger global shared symbol set.
o Programs and modules which depend on common shared libraries
must also use the exact same versions of those shared libraries.
This necessitates more rebuilds and more binary package releases.
Bob
======================================
Bob Friesenhahn
address@hidden
http://www.simplesystems.org/users/bfriesen