[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: |
Sat, 13 Mar 2004 12:27:46 -0600 (CST) |
On Sat, 13 Mar 2004, Scott James Remnant wrote:
> package libltdl3
> forwarded 195821 address@hidden
> thanks
>
> Currently libltdl always dlopen()s libraries with the LT_GLOBAL flag
> (defined as RTLD_GLOBAL | DL_GLOBAL).
>
> This flag causes the external symbols defined in the library to be made
> available for symbol resolution of subsequently loaded libraries. This
> isn't the default behaviour of dlopen().
Very interesting.
> Perhaps we need an option whether to dlopen() libraries globally or
> not? Any thoughts?
The normal behavior of a "module" is that the program or library which
loads it then uses lt_dlsym() to obtain the address of symbols. It is
not expected that modules have the behavior of normal shared
libraries. Therefore, it seems to me that libltdl should not be
supplying RTLD_GLOBAL at all.
Bob
======================================
Bob Friesenhahn
address@hidden
http://www.simplesystems.org/users/bfriesen