is LD_PRELOAD available in cygwin?

Günther Jedenastik g.jedenastik@gmail.com
Fri Aug 3 07:13:00 GMT 2007


Christopher Faylor schrieb:
> On Wed, Aug 01, 2007 at 08:23:15AM -0700, Brian Dessent wrote:
>   
>> G?nther Jedenastik wrote:
>>
>>     
>>> using g++ to compile a dll which overload's the open(); glibc system call.
>>> Using preload i want to load my own dll with my open(); function. using 
>>> dlsym(); i try to load the glibc open(); function.
>>>       
>> Cygwin does not use glibc.  glibc is Linux-specifc.
>>
>>     
>>> Q1: is LD_PRELOAD available in cygwin? if yes, any hint's why it's not
>>> working? (maybe some configuration problem or so, any hint would be
>>> helpfull)
>>> Q2: are there any alternative ways to preloading causing the same result?
>>>       
>> No, LD_PRELOAD is an aspect of ELF dynamic loaders and is not available
>> on Windows.  It's not something that Cygwin can provide since it is a
>> function provided by the program loader, i.e. the operating system.
>>     
>
> Sorry, Brian, but this isn't correct.  LD_PRELOAD has been available for
> Cygwin for a while.
>
> It's not 100% like linux but it is close.  You can only override cygwin
> functions with it but that should work for open().  If this isn't working
> under cygwin, I'd suspect function decorations are not right, i.e., the
> open() function name being trapped doesn't look the same as the open in
> cygwin1.dll.
>
> ...either that or LD_PRELOAD is broken.  I haven't played with it for a
> while.
>
> cgf
>
> --
> Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
> Problem reports:       http://cygwin.com/problems.html
> Documentation:         http://cygwin.com/docs.html
> FAQ:                   http://cygwin.com/faq/
>
>
>   
well, preloading a library seems working, but the function decoration 
makes problems, but i'm sure this is my fault
it would be great if anyone has a simple example for cygwin func decorations

never the less, thx for your help

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list