[PLUG] Perl: module fails to install

Robert Citek robert.citek at gmail.com
Mon Jun 21 14:08:22 UTC 2021


On Mon, Jun 21, 2021 at 6:44 AM Rich Shepard <rshepard at appl-ecosys.com>
wrote:

> On Sun, 20 Jun 2021, Robert Citek wrote:
>
> > Can you please provide some context info, such as, what OS, what distro,
> > what version, what commands?
>
> Robert,
>
> Slackware-14.2/x86_65, perl-5.22.2-x86_64-1.
>
> Two installation approaches:
>
> # perl -MCPAN -e shell
> cpan[1]> install Gtk3.pm
> ...
> Files=22, Tests=0,  1 wallclock secs ( 0.05 usr  0.02 sys +  1.02 cusr
> 0.13 csys =  1.22 CPU)
> Result: FAIL
> Failed 22/22 test programs. 0/0 subtests failed.
> Makefile:851: recipe for target 'test_dynamic' failed
> make: *** [test_dynamic] Error 2
>    XAOC/Gtk3-0.038.tar.gz
>    /usr/bin/make test -- NOT OK
> //hint// to see the cpan-testers results for installing this module, try:
>    reports XAOC/Gtk3-0.038.tar.gz
> Failed during this command:
>   XAOC/Gtk3-0.038.tar.gz                       : make_test NO
>
> # cpan[2] install Gtk3.pm
> ...
> Files=22, Tests=0,  1 wallclock secs ( 0.05 usr  0.02 sys +  1.02 cusr
> 0.13 csys =  1.22 CPU)
> Result: FAIL
> Failed 22/22 test programs. 0/0 subtests failed.
> Makefile:851: recipe for target 'test_dynamic' failed
> make: *** [test_dynamic] Error 2
>    XAOC/Gtk3-0.038.tar.gz
>    /usr/bin/make test -- NOT OK
> //hint// to see the cpan-testers results for installing this module, try:
>    reports XAOC/Gtk3-0.038.tar.gz
> Failed during this command:
>   XAOC/Gtk3-0.038.tar.gz                       : make_test NO
>
> I've not before failed to install a perl module using the first approach;
> tried the second approach only today.
>
> Regards,
>
> Rich
>

Hello Rich,

Since I don't usually run Slackware, I used a Docker container to simulate
your environment.
These are the commands I ran:

# download and run a slackware container
  docker run -d --name slack vbatts/slackware:14.2 sleep inf

# install perl
  docker exec slack wget --no-check-certificate
https://slackware.uk/slackware/slackware64-14.2/slackware64/d/perl-5.22.2-x86_64-1.txz
  docker exec slack upgradepkg --install-new perl-5.22.2-x86_64-1.txz
  docker exec slack perl -V

...
  @INC:
    /usr/local/lib64/perl5
    /usr/local/share/perl5
    /usr/lib64/perl5/vendor_perl
    /usr/share/perl5/vendor_perl
    /usr/lib64/perl5
    /usr/share/perl5
    .
# install Gtk3.pm
  docker exec slack cpan install Gtk3.pm

  ...
  Running make for X/XA/XAOC/Gtk3-0.038.tar.gz
  Warning: Prerequisite 'Cairo::GObject => 1.000' for
'XAOC/Gtk3-0.038.tar.gz' failed when processing
'XAOC/Cairo-GObject-1.005.tar.gz' with 'writemakefile => NO
'/usr/bin/perl5.22.2 Makefile.PL' returned status 512'. Continuing, but
chances to succeed are limited.
  Warning: Prerequisite 'Glib::Object::Introspection => 0.043' for
'XAOC/Gtk3-0.038.tar.gz' failed when processing
'XAOC/Glib-Object-Introspection-0.049.tar.gz' with 'writemakefile => NO --
No 'Makefile' created
  '. Continuing, but chances to succeed are limited.
    XAOC/Gtk3-0.038.tar.gz
    make -- NOT OK

Looks like Gtk3 requires other dependencies: Cairo-GObject and
Glib-Object-Introspection.

At this point, I gave up because 1) there are dependency issues which
aren't automatically resolving and 2) the errors I am getting seem to
differ from yours, suggesting that we don't have the same environment.

So, I cleaned up my container environment:
  docker container stop slack
  docker container rm slack
  docker image rm vbatts/slackware:14.2


For comparison, I tried installing the same module using an Ubuntu
container:

# download and run an Ubuntu container
  docker run -d --name ubuntu ubuntu sleep inf

# install perl with Gtk3 module and test
  docker exec ubuntu apt-get update
  docker exec -e DEBIAN_FRONTEND=noninteractive ubuntu apt-get install -y
libgtk3-perl
  docker exec ubuntu perl -mGtk3 -e 'print "== Hello, world!\n";'
== Hello, world!

# clean up container environment
  docker container stop ubuntu
  docker container rm ubuntu
  docker image rm ubuntu

Using an Ubuntu container, I was able to get the Gtk3 module installed and
verified that it ran.

Good luck and let us know how things go.

Regards,
- Robert



More information about the PLUG mailing list