Recognising libraries.

Richard Hainsworth richard at rusrating.ru
Thu Dec 9 18:34:59 UTC 2010


I was testing zavolaj (NativeCall) and discovered a library that I was 
certain was in /usr/lib was not being found. So I tried looking at all 
the libraries in </usr/lib> and testing with the relevant line from 
NativeCall.

The results (see below) are inconsistent, and I can find no pattern.

I dont know enough to be able to track the problem further into parrot.

#!perl6
my $lib;
my $dir = '/usr/lib';
for dir($dir).sort {
   $lib = .comb(/ ^ .* <?before \.so$ > /); #shortens the file name to 
the part before .so
   next unless $lib;
   print "$dir/$_ shortened to <$lib> ";

   $lib = pir::loadlib__Ps($lib); # adapted from NativeCall

   ' NOT'.print unless $lib;
   say ' located';
}

Some of the output is:

/usr/lib/libXrender.so shortened to <libXrender>  located
/usr/lib/libXt.so shortened to <libXt>  located
/usr/lib/liba52-0.7.4.so shortened to <liba52-0.7.4>  NOT located
/usr/lib/libaa.so shortened to <libaa>  located
/usr/lib/libag_core.so shortened to <libag_core>  located
/usr/lib/libag_dev.so shortened to <libag_dev>  NOT located
/usr/lib/libag_gui.so shortened to <libag_gui>  NOT located
/usr/lib/libanl.so shortened to <libanl>  located
/usr/lib/libasound.so shortened to <libasound>  located
/usr/lib/libasprintf.so shortened to <libasprintf>  located
/usr/lib/libatk-1.0.so shortened to <libatk-1.0>  NOT located
/usr/lib/libaudio.so shortened to <libaudio>  located
/usr/lib/libaudiofile.so shortened to <libaudiofile>  located
/usr/lib/libavahi-client.so shortened to <libavahi-client>  located
/usr/lib/libavahi-common.so shortened to <libavahi-common>  located
/usr/lib/libbfd-2.20.51-system.20100908.so shortened to 
<libbfd-2.20.51-system.20100908>  NOT located
/usr/lib/libc.so shortened to <libc>  NOT located
/usr/lib/libcaca++.so shortened to <libcaca++>  located
/usr/lib/libcaca.so shortened to <libcaca>  located
/usr/lib/libcairo-gobject.so shortened to <libcairo-gobject>  located
/usr/lib/libcairo-script-interpreter.so shortened to 
<libcairo-script-interpreter>  NOT located
/usr/lib/libcairo.so shortened to <libcairo>  located
/usr/lib/libchromeXvMC.so shortened to <libchromeXvMC>  located
/usr/lib/libchromeXvMCPro.so shortened to <libchromeXvMCPro>  located
/usr/lib/libcidn.so shortened to <libcidn>  located
/usr/lib/libcrypt.so shortened to <libcrypt>  located
/usr/lib/libcucul++.so shortened to <libcucul++>  located
/usr/lib/libcucul.so shortened to <libcucul>  located
/usr/lib/libcurses.so shortened to <libcurses>  located
/usr/lib/libdb-4.7.so shortened to <libdb-4.7>  NOT located
/usr/lib/libdb-4.8.so shortened to <libdb-4.8>  NOT located
/usr/lib/libdl.so shortened to <libdl>  located
/usr/lib/libdrm.so shortened to <libdrm>  located
/usr/lib/libdrm_intel.so shortened to <libdrm_intel>  located
/usr/lib/libdrm_nouveau.so shortened to <libdrm_nouveau>  located
/usr/lib/libdrm_radeon.so shortened to <libdrm_radeon>  located
/usr/lib/libelf-0.147.so shortened to <libelf-0.147>  NOT located
/usr/lib/libesd.so shortened to <libesd>  located




More information about the parrot-dev mailing list