Bug#801498: rakudo: Native libraries and paths

gregor herrmann gregoa at debian.org
Sun Oct 11 16:02:00 UTC 2015


On Sun, 11 Oct 2015 17:49:12 +0200, Dominique Dumont wrote:

> Le dimanche 11 octobre 2015, 12:50:07 12:50:07 gregor herrmann a écrit :
> > Is this a problem of rakudo, of panda, of Linenoise, or am I just
> > missing some setup/variable/...?
> uh... You're pretty far ahead of me playing with panda...

I was just unhappy because I had no readline etc. support when
starting "perl6" :)
 
> Anyway, /usr/bin/perl6 is actually:
> exec /usr/bin/moar  --execname="$0" --libpath="/usr/share/nqp/lib" --
> libpath="/usr/lib/nqp/lib" --libpath="/usr/share/perl6/lib" --
> libpath="/usr/share/perl6/runtime" --libpath="/usr/lib/perl6/runtime" --
> libpath="/usr/lib/perl6/runtime/dynext" /usr/share/perl6/runtime/perl6.moarvm 
> "$@"

Ah.
 
> Could you try to add a --libpath option pointing to the directory containing 
> liblinenoise.so ?
> let see what happens then...

% moar  --execname="/usr/bin/perl6" --libpath="/usr/share/nqp/lib" --libpath="/usr/lib/nqp/lib" --libpath="/usr/share/perl6/lib" --libpath="/usr/share/perl6/runtime" --libpath="/usr/lib/perl6/runtime" --libpath="/usr/lib/perl6/runtime/dynext" --libpath="/home/gregoa/.perl6/2015.09/lib" /usr/share/perl6/runtime/perl6.moarvm
===SORRY!===
Cannot locate native library 'liblinenoise.so': liblinenoise.so: cannot open shared object file: No such file or directory

And

open("/home/gregoa/.perl6/2015.09/lib/Linenoise.pm", O_RDONLY|O_CLOEXEC) = 13
open("/usr/share/perl6/lib/NativeCall.pm.moarvm", O_RDONLY|O_CLOEXEC) = 13
open("/usr/share/perl6/lib/NativeCall/Types.pm.moarvm", O_RDONLY|O_CLOEXEC) = 13
open("/usr/share/perl6/lib/NativeCall/Compiler/GNU.pm.moarvm", O_RDONLY|O_CLOEXEC) = 13
open("/usr/share/perl6/lib/NativeCall/Compiler/MSVC.pm.moarvm", O_RDONLY|O_CLOEXEC) = 13
open("/usr/lib/moar/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/moar/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 13
open("/lib/x86_64-linux-gnu/tls/x86_64/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/tls/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/x86_64/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/x86_64-linux-gnu/tls/x86_64/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/x86_64-linux-gnu/tls/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/x86_64-linux-gnu/x86_64/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/x86_64-linux-gnu/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/lib/tls/x86_64/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/lib/tls/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/lib/x86_64/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/lib/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/x86_64/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/x86_64/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/moar/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/moar/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 13
open("/lib/x86_64-linux-gnu/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/x86_64-linux-gnu/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/lib/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/liblinenoise.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

Looks like the NativeCall library ignores --libpath.


Cheers,
gregor

-- 
 .''`.  Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06
 : :' : Debian GNU/Linux user, admin, and developer -  https://www.debian.org/
 `. `'  Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
   `-   NP: Ben Weaver: Liza
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 949 bytes
Desc: Digital Signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-rakudo-devel/attachments/20151011/6ca8b16d/attachment-0001.sig>


More information about the Pkg-rakudo-devel mailing list