[plt-scheme] ffi: dlopen in unix

From: Jon Rafkind (workmin at ccs.neu.edu)
Date: Wed Oct 11 08:21:34 EDT 2006

>From the code foreign.c uses and random googling it seems like Windows
doesn't differentiate between global and local symbols so I guess the
flag could just be ignored on Windows.

Hans Oesterholt-Dijkema wrote:
> Would that not break compatibility with e.g. windows?
>
> Jon Rafkind schreef:
>>> RTLD_GLOBAL is not used when you pass in #f -- this passes NULL to
>>> dlopen, and no linking of new names is done.
>>>     
>> RTLD_GLOBAL is always used, #f passes in NULL for the name argument but
>> I was saying maybe only RTLD_GLOBAL is needed when the name is NULL( #f
>> ). Perhaps this is not the case as you say below.
>>  
>>>   OTOH, there are cases
>>> where RTLD_GLOBAL is needed, when one library requires loading another
>>> library in and wants to use its `bindings' (at least this is my
>>> understanding of these things).  Maybe an optional argument should be
>>> added to ffi-lib at some point?
>>>       
>> How about just a 3rd parameter to ffi-lib, 'global or 'local which would
>> correspond directly to RTLD_GLOBAL or RTLD_LOCAL?
>> _________________________________________________
>>   For list-related administrative tasks:
>>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>>
>>
>>   
>
> _________________________________________________
>  For list-related administrative tasks:
>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>
>


Posted on the users mailing list.