libtool
[Top][All Lists]
Advanced

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

Fw: Problem with libtool under HPUX: BIND_FIRST flag is required


From: Jan Giesen
Subject: Fw: Problem with libtool under HPUX: BIND_FIRST flag is required
Date: Wed, 30 Nov 2005 22:48:10 +0100

Dear Ralf,

You wrote:
> We need RTLD_GLOBAL by default at the moment, simply because some
> libltdl users expect things to work this way. We could add a new
> interface which allows some kind of localization of symbol scope,
> say lt_dlopen_mode("foo.la", LT_DL_LOCAL), but what about graceful
> degradation on systems which do not allow such localization?
> 
> Consider, as an extreme, systems with static libraries only.
> There, above scheme simply won't work unmodified. However, libltdl
> *can* work in the static setting if you employ the symbol prefixing
> as described in the documentation and used in the libtool/mdemo/
> tests: In module foo1, use
> #define bar foo1_LTX_bar
> 
> Granted, this isn't pretty, nor fun to debug, but it should make both
> static linking work, and it should fix your issue above in the shared
> linking case: lt_dlsym will look for `foo1_LTX_bar' before looking for
> `bar'.
> 
> Does this help you? Maybe we should add a TODO item for lt_dlopen_mode.
> What do the other people think? I must admit that I don't even know
> whether all other dlopening mechanisms natively allow to limit symbol
> scope, nor whether such semantics are compatible.
> 
> Cheers,
> Ralf

Thank you for the information; I understand now better how Libtool works.
For me this is fine, but I am just a user of the cvsnt package, not the 
owner.
One final remark: In ltdl.c the link flag "LT_LAZY_OR_NOW" can be
defined outside of ltdl.c, but the link flag "LT_GLOBAL" can't;
therefore you cannot set this parameter externally to RTLD_LOCAL.
Probably this unsymmetrical definition of the link flags can be
aligned.

Best regards
                    Jan Giesen






reply via email to

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