Skip Menu |

This queue is for tickets about the Alien-ImageMagick CPAN distribution.

Report information
The Basics
Id: 98979
Status: resolved
Priority: 0/
Queue: Alien-ImageMagick

People
Owner: JETEVE [...] cpan.org
Requestors: l.mai [...] web.de
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in:
  • 0.01
  • 0.02
Fixed in: 0.03



Subject: the installed shared libs link against build directory
Alien::ImageMagick installs some shared libraries that end up using the MagicCore library from the build directory. Cleaning up after the build breaks the installed module. This is especially fun with cpanm, because the module seems to work, until 7 days later when cpanm autocleans its work directories. $ perl Build.PL Creating new 'MYMETA.yml' with configuration results Creating new 'Build' script for 'Alien-ImageMagick' version '0.02' $ ./Build ...snip... $ ./Build test ...snip... $ ./Build install ...snip... $ perl -wE 'use Image::Magick; say "ok"' ok $ ldd ~/perl5/perlbrew/perls/perl-5.12.5-ext/lib/site_perl/5.12.5/x86_64-linux/auto/Image/Magick/Q16/Q16.so linux-vdso.so.1 => (0x00007fffe11ff000) libMagickCore-6.Q16.so.2 => /home/jep/src/Alien-ImageMagick-0.02/_alien/ImageMagick-6.8.9-7/PerlMagick/quantum/../../magick/.libs/libMagickCore-6.Q16.so.2 (0x00007f4203768000) ...snip... $ ./Build clean Cleaning up build files $ perl -wE 'use Image::Magick; say "ok"' Can't load '/home/jep/perl5/perlbrew/perls/perl-5.12.5-ext/lib/site_perl/5.12.5/x86_64-linux/auto/Image/Magick/Q16/Q16.so' for module Image::Magick::Q16: libMagickCore-6.Q16.so.2: cannot open shared object file: No such file or directory at /home/jep/perl5/perlbrew/perls/perl-5.12.5-ext/lib/5.12.5/x86_64-linux/DynaLoader.pm line 200. at /home/jep/perl5/perlbrew/perls/perl-5.12.5-ext/lib/5.12.5/parent.pm line 20 Compilation failed in require at /home/jep/perl5/perlbrew/perls/perl-5.12.5-ext/lib/5.12.5/parent.pm line 20. BEGIN failed--compilation aborted at /home/jep/perl5/perlbrew/perls/perl-5.12.5-ext/lib/site_perl/5.12.5/x86_64-linux/Image/Magick.pm line 22. Compilation failed in require at -e line 1. BEGIN failed--compilation aborted at -e line 1. &Image::Magick::Q16::constant not defined. The required ImageMagick libraries are not installed or not installed properly. END failed--call queue aborted at -e line 1. :-(
Subject: build.log
Download build.log
application/octet-stream 52.1k

Message body not shown because it is not plain text.

Subject: install.log
Download install.log
application/octet-stream 428.7k

Message body not shown because it is not plain text.

Subject: ldd.log
Download ldd.log
application/octet-stream 3.4k

Message body not shown because it is not plain text.

Subject: test.log
Download test.log
application/octet-stream 1.3k

Message body not shown because it is not plain text.

This is critical indeed. Thanks a lot for the detailed report. Will address as soon as I can. Any patch you can thing of, since the issue is fresh in your brain? Cheers, J. On Fri Sep 19 05:06:29 2014, l.mai@web.de wrote: Show quoted text
> Alien::ImageMagick installs some shared libraries that end up using > the MagicCore library from the build directory. Cleaning up after the > build breaks the installed module. > > This is especially fun with cpanm, because the module seems to work, > until 7 days later when cpanm autocleans its work directories. > > $ perl Build.PL > Creating new 'MYMETA.yml' with configuration results > Creating new 'Build' script for 'Alien-ImageMagick' version '0.02' > > $ ./Build > ...snip... > > $ ./Build test > ...snip... > > $ ./Build install > ...snip... > > $ perl -wE 'use Image::Magick; say "ok"' > ok > > $ ldd ~/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/site_perl/5.12.5/x86_64-linux/auto/Image/Magick/Q16/Q16.so > linux-vdso.so.1 => (0x00007fffe11ff000) > libMagickCore-6.Q16.so.2 => /home/jep/src/Alien-ImageMagick- > 0.02/_alien/ImageMagick-6.8.9- > 7/PerlMagick/quantum/../../magick/.libs/libMagickCore-6.Q16.so.2 > (0x00007f4203768000) > ...snip... > > $ ./Build clean > Cleaning up build files > > $ perl -wE 'use Image::Magick; say "ok"' > Can't load '/home/jep/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/site_perl/5.12.5/x86_64-linux/auto/Image/Magick/Q16/Q16.so' > for module Image::Magick::Q16: libMagickCore-6.Q16.so.2: cannot open > shared object file: No such file or directory at > /home/jep/perl5/perlbrew/perls/perl-5.12.5-ext/lib/5.12.5/x86_64- > linux/DynaLoader.pm line 200. > at /home/jep/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/5.12.5/parent.pm line 20 > Compilation failed in require at /home/jep/perl5/perlbrew/perls/perl- > 5.12.5-ext/lib/5.12.5/parent.pm line 20. > BEGIN failed--compilation aborted at > /home/jep/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/site_perl/5.12.5/x86_64-linux/Image/Magick.pm line 22. > Compilation failed in require at -e line 1. > BEGIN failed--compilation aborted at -e line 1. > &Image::Magick::Q16::constant not defined. The required ImageMagick > libraries are not installed or not installed properly. > END failed--call queue aborted at -e line 1. > > :-(
Patched in V0.03 On Fri Sep 19 05:06:29 2014, l.mai@web.de wrote: Show quoted text
> Alien::ImageMagick installs some shared libraries that end up using > the MagicCore library from the build directory. Cleaning up after the > build breaks the installed module. > > This is especially fun with cpanm, because the module seems to work, > until 7 days later when cpanm autocleans its work directories. > > $ perl Build.PL > Creating new 'MYMETA.yml' with configuration results > Creating new 'Build' script for 'Alien-ImageMagick' version '0.02' > > $ ./Build > ...snip... > > $ ./Build test > ...snip... > > $ ./Build install > ...snip... > > $ perl -wE 'use Image::Magick; say "ok"' > ok > > $ ldd ~/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/site_perl/5.12.5/x86_64-linux/auto/Image/Magick/Q16/Q16.so > linux-vdso.so.1 => (0x00007fffe11ff000) > libMagickCore-6.Q16.so.2 => /home/jep/src/Alien-ImageMagick- > 0.02/_alien/ImageMagick-6.8.9- > 7/PerlMagick/quantum/../../magick/.libs/libMagickCore-6.Q16.so.2 > (0x00007f4203768000) > ...snip... > > $ ./Build clean > Cleaning up build files > > $ perl -wE 'use Image::Magick; say "ok"' > Can't load '/home/jep/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/site_perl/5.12.5/x86_64-linux/auto/Image/Magick/Q16/Q16.so' > for module Image::Magick::Q16: libMagickCore-6.Q16.so.2: cannot open > shared object file: No such file or directory at > /home/jep/perl5/perlbrew/perls/perl-5.12.5-ext/lib/5.12.5/x86_64- > linux/DynaLoader.pm line 200. > at /home/jep/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/5.12.5/parent.pm line 20 > Compilation failed in require at /home/jep/perl5/perlbrew/perls/perl- > 5.12.5-ext/lib/5.12.5/parent.pm line 20. > BEGIN failed--compilation aborted at > /home/jep/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/site_perl/5.12.5/x86_64-linux/Image/Magick.pm line 22. > Compilation failed in require at -e line 1. > BEGIN failed--compilation aborted at -e line 1. > &Image::Magick::Q16::constant not defined. The required ImageMagick > libraries are not installed or not installed properly. > END failed--call queue aborted at -e line 1. > > :-(
Hi, this should be fixed in V0.03. Can you confirm? Cheers, J. On Fri Sep 19 05:06:29 2014, l.mai@web.de wrote: Show quoted text
> Alien::ImageMagick installs some shared libraries that end up using > the MagicCore library from the build directory. Cleaning up after the > build breaks the installed module. > > This is especially fun with cpanm, because the module seems to work, > until 7 days later when cpanm autocleans its work directories. > > $ perl Build.PL > Creating new 'MYMETA.yml' with configuration results > Creating new 'Build' script for 'Alien-ImageMagick' version '0.02' > > $ ./Build > ...snip... > > $ ./Build test > ...snip... > > $ ./Build install > ...snip... > > $ perl -wE 'use Image::Magick; say "ok"' > ok > > $ ldd ~/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/site_perl/5.12.5/x86_64-linux/auto/Image/Magick/Q16/Q16.so > linux-vdso.so.1 => (0x00007fffe11ff000) > libMagickCore-6.Q16.so.2 => /home/jep/src/Alien-ImageMagick- > 0.02/_alien/ImageMagick-6.8.9- > 7/PerlMagick/quantum/../../magick/.libs/libMagickCore-6.Q16.so.2 > (0x00007f4203768000) > ...snip... > > $ ./Build clean > Cleaning up build files > > $ perl -wE 'use Image::Magick; say "ok"' > Can't load '/home/jep/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/site_perl/5.12.5/x86_64-linux/auto/Image/Magick/Q16/Q16.so' > for module Image::Magick::Q16: libMagickCore-6.Q16.so.2: cannot open > shared object file: No such file or directory at > /home/jep/perl5/perlbrew/perls/perl-5.12.5-ext/lib/5.12.5/x86_64- > linux/DynaLoader.pm line 200. > at /home/jep/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/5.12.5/parent.pm line 20 > Compilation failed in require at /home/jep/perl5/perlbrew/perls/perl- > 5.12.5-ext/lib/5.12.5/parent.pm line 20. > BEGIN failed--compilation aborted at > /home/jep/perl5/perlbrew/perls/perl-5.12.5- > ext/lib/site_perl/5.12.5/x86_64-linux/Image/Magick.pm line 22. > Compilation failed in require at -e line 1. > BEGIN failed--compilation aborted at -e line 1. > &Image::Magick::Q16::constant not defined. The required ImageMagick > libraries are not installed or not installed properly. > END failed--call queue aborted at -e line 1. > > :-(