develooper Front page | perl.perl6.internals | Postings from September 2005

Re: loadlib and libraries with '.' in the name

Thread Previous | Thread Next
Ross McFarland
September 23, 2005 07:12
Re: loadlib and libraries with '.' in the name
Message ID:

On Sep 23, 2005, at 12:47 AM, Leopold Toetsch wrote:

> On Sep 23, 2005, at 7:51, Ross McFarland wrote:
>> i was playing around with NCI stuff tonight and ran across a  
>> problem in loadlib. the following code does not work:
>>     .local pmc lib_gtk
>>     lib_gtk = loadlib "libgtk-x11-2.0"
> The need for such libnames arises typically on debian and alikes,  
> where not all -devel packages are installed. I see two  
> possibilities here:
> 1) demand from user to either install the -devel pkg or symlink the  
> shortname
> 2) Parrot stops trying to  ...
>>     ext_start = strrchr(*lib_name, '.');
> ... strip extensions.

as my original email mentioned i think all of this try everything  
possible permutation is hacky and not a good idea. i think the real  
solution is to require that loadlib only gets the stem of the  
library. we can then reliably put on the appropriate extension for  
the platform and go about the normal searching stuff. if we know we  
always get the prefix we can also safely and correctly do the win32.  
if you look at the doc for loadlib it talks about library names, not  
files with paths with and without extensions. all of the examples are  
name only as well.

i think that library name (without extension and with or without lib  
on the front) is the best route. the doc almost already says as much,  
and i can extend it to be more explicit. we could cleanly handle all  
of the cases then. i don't want to make the decision for everyone.


Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About