On 25/02/16 23:18, Richard W.M. Jones wrote:> On Thu, Feb 25, 2016 at 10:46:10PM +0200, noxdafox wrote:
>> On 25/02/16 10:54, Richard W.M. Jones wrote:
>>> Apply the attached patch, followed by doing:
>>>
>>> make -C perl clean
>>> ./configure
>>> make
>>>
>>> Rich.
>>>
>> I applied the patch, unfortunately the issue is still present.
>>
>> This is what I get if I run interactive Perl console.
>>
>> DB<1> use Sys::Guestfs
>> Can't locate loadable object for module Sys::Guestfs in @INC (@INC
>> contains: /home/noxdafox/development/libguestfs/perl/lib /etc/perl
>> /usr/local/lib/x86_64-linux-gnu/perl/5.22.1
>> /usr/local/share/perl/5.22.1 /usr/lib/x86_64-linux-gnu/perl5/5.22
>> /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.22
>> /usr/share/perl/5.22 /usr/local/lib/site_perl
>> /usr/lib/x86_64-linux-gnu/perl-base .) at (eval
>> 8)[/usr/share/perl/5.22/perl5db.pl:737] line 2.
>> Compilation failed in require at (eval
>> 8)[/usr/share/perl/5.22/perl5db.pl:737] line 2.
>> at (eval 8)[/usr/share/perl/5.22/perl5db.pl:737] line 2.
>> main::BEGIN() called at (eval
>> 8)[/usr/share/perl/5.22/perl5db.pl:737] line 2
>> eval {...} called at (eval
>> 8)[/usr/share/perl/5.22/perl5db.pl:737] line 2
>> eval 'no strict; ($@, $!, $^E, $,, $/, $\\, $^W) >>
@DB::saved;package main; $^D = $^D | $DB::db_stop;
>> use Sys::Guestfs;
>> ' called at /usr/share/perl/5.22/perl5db.pl line 737
>> DB::eval called at /usr/share/perl/5.22/perl5db.pl line 3110
>> DB::DB called at -e line 1
>> BEGIN failed--compilation aborted at (eval
>> 8)[/usr/share/perl/5.22/perl5db.pl:737] line 2.
>> at (eval 8)[/usr/share/perl/5.22/perl5db.pl:737] line 2.
>> eval 'no strict; ($@, $!, $^E, $,, $/, $\\, $^W) >>
@DB::saved;package main; $^D = $^D | $DB::db_stop;
>> use Sys::Guestfs;
>> ' called at /usr/share/perl/5.22/perl5db.pl line 737
>> DB::eval called at /usr/share/perl/5.22/perl5db.pl line 3110
>> DB::DB called at -e line 1
>>
>> I have no experience with Perl. Is it failing evaluating the module?
> I don't understand why this is happening, but the error means that it
> cannot load the binary part of the module (ie. normally
> libguestfs/perl/blib/arch/auto/Sys/Guestfs/Guestfs.so).
According to autogen.sh output Perl bindings and virt tools seem to be
missing, could it be related to this? Are the tests relying to such
dependencies?
This is how we have configured the optional components for you today:
Daemon .............................. yes
Appliance ........................... yes
QEMU ................................ /usr/bin/qemu-system-x86_64
guestfish and C-based virt tools .... yes
FUSE filesystem ..................... no
GNU gettext for i18n ................ yes
virt-p2v ............................ no
OCaml bindings ...................... yes
OCaml-based virt tools .............. yes
Perl bindings ....................... no
Perl-based virt tools ............... no
Python bindings ..................... yes
Ruby bindings ....................... no
Java bindings ....................... yes
Haskell bindings .................... no
PHP bindings ........................ no
Erlang bindings ..................... no
Lua bindings ........................ no
Go bindings ......................... no
gobject bindings .................... no
gobject introspection ............... no
bash completion ..................... yes>
>> I checked the module and it's contained in the path
>> /home/noxdafox/development/libguestfs/perl/lib which is present in
>> @INC.
> It ought to be loading the module from perl/blib/... which is the
> compiled copy of the module.
>
> Anyway, suggest doing something like this [NB: it will DELETE any
> non-checked-in files in your local directory]:
>
> git clean -xdf
>
> and rebuilding again.
Unfortunately it didn't help either.>
> Rich.
>