libtool-patches
[Top][All Lists]
Advanced

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

Re: Provide a means to activate dynamically the debug traces


From: Ralf Wildenhues
Subject: Re: Provide a means to activate dynamically the debug traces
Date: Fri, 9 Jan 2009 19:40:25 +0100
User-agent: Mutt/1.5.18 (2008-05-17)

Hi Akim,

* Akim Demaille wrote on Fri, Jan 09, 2009 at 04:37:32PM CET:
>
> when I dlopen a  module.la which has a dependency.la library, I
> expected ltdl to  automatically find dependency.la which is not
> installed.  Yet it does  not seem to use the module.la's deplibs to
> dlopen them, it delegates  this to the native dlopen.  As a result,
> since my library is not  installed, dlopen fails (see
> dlopen-failure.txt attachement, notice the deplibs line).
>
> Of course I can adjust LD_LIBRARY_PATH, but that's not what I expected.

You can instead use
  libtool --mode=execute -dlopen module.la $program $args

Thank you for the patch.  I haven't looked at it in detail, but AFAICS
it (1) introduces global data symbols, (2) uses them as user-API, and
(3) does not annotate them suitably for w32, and (4) doesn't bump the
library version numbers accordingly.  None of these are ok,
unfortunately.  Oh, I forgot missing testsuite addition and
documentation for new functionality.  ;-)

I understand that you probably wrote this as a quick hack to get
something working.  However, IMVHO we should not give in to let such
quick hacks into the code base without proper cleanup.

FYI, never ever use data (as opposed to function) symbols in a shared
library API.  Even now that Cygwin is quite usable with them, it will
certainly come back to haunt you down the road when you have a better
internal representation but are stuck with exposing it.  Just don't ever
do it.  To give a bad precendece example, libltdl did it with
lt_preloaded_symbols, and users are suffering because we failed to keep
it compatible, and libltdl is suffering because it can't use a faster
search inside them.

BTW, your editor seems to both reformat existing code, and use different
indenting strategy for new code.  Hmm.

Cheers,
Ralf




reply via email to

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