Page 1 of 1

Alien::ImageMagick for CPAN?

Posted: 2010-10-16T12:15:50-07:00
by jjn1056
Hi,

Installing PerlMagick from CPAN seems to be problematic. I think this is due to the fact that you need to have (and find) a compatible version of the core ImageMagick libs and includes installed first. Typically installing the code is a non trivial task for people who are not great with the commandline, and often the versions you can get with RPMs or Debs are changed in subtle ways which cause problems. And of course for out WIndows Perl friends, they nearly always have a lot of trouble :)

As a Perl programmer, ideally I'd be able to use the standard toolchain to install CPAN modules. This would be the cpan client (or one of the newer ones like cpanminus, which I highly recommend) and tools to manage dependences such as local::lib, which allows you to easily install CPAN modules into a user level directory (great for shared development or shared hosting boxes). Additionally, a lot of Perl programmers are choosing to not build on the system OS Perl you get with a lot of linux distributions, rather using a tool like Perlbrew to install Perl. Obviously if you are rolling your own Perl, that precludes using tools like RPMs to try and bootstrap Imagemagick.

I think it would be very useful if we could build a Alien::Imagemagick distribution, which would just build a clean and known version of the core core into a directory under Perl's control. This would make it much easier to build Perlmagick since you could just use the standard CPAN client and toolchain to do so. You wouldn't need to stop and install Imagemagick from src or try to get it running from an RPM, for example. And you could install it into a user level directory very easily, which would help people using shared servers.

I don't actually see this as a lot of work, and am willing to do it but wanted to bounce the idea off the group first. What I'd be doing is creating the Alien::ImageMagick package and then offering a patch to PerlMagick to use that instead of searching for a system level installed lib and include area. We could make this an option you turn on with a %ENV setting in order to see what people think. Comments and advice very welcomed!