Page 1 of 1

Problem getting PerlMagick compiled

Posted: 2013-03-18T02:10:29-07:00
by rgs
Hello,

using the following configure options:

Code: Select all

./configure --prefix=/usr --mandir=/share/man --infodir=/share/info --with-gs-font-dir=/usr/share/fonts/type1/gsfonts --with-magick-plus-plus --with-modules=yes
 --enable-shared --without-fpx --disable-openmp --x-includes=/usr/include/X11 --x-libraries=/usr/lib/X11
the package compiles successfully, though "jumping" into the PerlMagick directory triggering an:

perl -f Makefile.PL

following a simple "make" results in:

Code: Select all

make[1]: Entering directory `/usr/src/debian/imagemagick/PerlMagick/quantum'
make[1]: *** No rule to make target `Q16.pm', needed by `pm_to_blib'.  Stop.
make[1]: Leaving directory `/usr/src/debian/imagemagick/PerlMagick/quantum'
make: *** [subdirs] Error 2
a "Q16.pm" file doesn't exist in the entire source directory, not a file with a similar pattern. So anything one can do to get PerlMagick compiled ?

Oh - btw. - the version 6.8.3-10 fixed the error posted here:

viewtopic.php?f=3&t=22689

Now PS files work, though PerlMagick doesn't :(

Re: Problem getting PerlMagick compiled

Posted: 2013-03-18T03:13:01-07:00
by magick
Add --with-perl to your configure script. Does the PerlMagick install work now?

Re: Problem getting PerlMagick compiled

Posted: 2013-03-19T03:04:25-07:00
by broucaries
And compile with
make all perl-build

Bastien

Re: Problem getting PerlMagick compiled

Posted: 2013-03-31T02:17:16-07:00
by ryandesign
magick wrote:Add --with-perl to your configure script. Does the PerlMagick install work now?
broucaries wrote:And compile with
make all perl-build
I too want to know the best way to build perlmagick, and I don't want to have to run "./configure" or "make all" to do so. Neither of those steps were required for 6.8.0-7, the most recent version we have been able to package in MacPorts due to all the changes that have been made in ImageMagick since then. Imagine ImageMagick is already installed. Now how do we build perlmagick without having to re-configure and re-build all of ImageMagick in the process?

Re: Problem getting PerlMagick compiled

Posted: 2013-03-31T02:29:35-07:00
by broucaries
Hi,

For hpux has a quick workarround in order to compile you need to use gnumake (I will post soon patch to fix this compatibilty problem).

Re: Problem getting PerlMagick compiled

Posted: 2013-03-31T02:33:16-07:00
by broucaries
ryandesign wrote:
magick wrote:Add --with-perl to your configure script. Does the PerlMagick install work now?
broucaries wrote:And compile with
make all perl-build
I too want to know the best way to build perlmagick, and I don't want to have to run "./configure" or "make all" to do so. Neither of those steps were required for 6.8.0-7, the most recent version we have been able to package in MacPorts due to all the changes that have been made in ImageMagick since then. Imagine ImageMagick is already installed. Now how do we build perlmagick without having to re-configure and re-build all of ImageMagick in the process?
No you do not need to build in two step like you do.

Do a
./configure
then
make all
then
make perl-build

Perl has a dependency over libmagickcore ABI and the only way to get sure to do this is first to compile imagemagick then perlmagick.

After a make all you do not need to recompile imagmeagick to get perlmagick. But you need a compiled version of imagemagick to get perlmagick for ABI stability purpose

Re: Problem getting PerlMagick compiled

Posted: 2013-03-31T03:30:36-07:00
by ryandesign
Then as I said this is a step backward from 6.8.0-7 where this was not necessary.

In MacPorts, ImageMagick is a completely separate package from PerlMagick, and we like it that way. Users who want PerlMagick can install it (e.g. "sudo port install p5.12-perlmagick"), which will automatically install ImageMagick first if it's not already installed. Users who only want ImageMagick can install only that (e.g. "sudo port install ImageMagick").

So again, for the purposes of packaging this software in MacPorts, we need a way to build PerlMagick only, assuming that ImageMagick itself has already been compiled, installed, and cleaned (meaning the intermediate compiled objects have already been deleted). The way we were successfully doing this in 6.8.0-7 and earlier was to unpack the ImageMagick tarball, cd to the PerlMagick directory, run "perl5.12 Makefile.PL" and then "make".

Re: Problem getting PerlMagick compiled

Posted: 2013-03-31T07:14:44-07:00
by magick
Try this:
  • ./configure --with-quantum-depth=16 --with-perl
    cd PerlMagick/quantum
    ln -s quantum.pm Q16.pm
    ln -s quantum.xs Q16.xs
    cd ..
    perl Makefile.PL
    make
If you change the quantum depth to 8, use Q8.pm / Q8.xs instead.

Re: Problem getting PerlMagick compiled

Posted: 2013-03-31T09:07:02-07:00
by broucaries
magick wrote:Try this:
  • ./configure --with-quantum-depth=16 --with-perl
    cd PerlMagick/quantum
    ln -s quantum.pm Q16.pm
    ln -s quantum.xs Q16.xs
    cd ..
    perl Makefile.PL
    make
If you change the quantum depth to 8, use Q8.pm / Q8.xs instead.
I think this will work:
/configure --with-quantum-depth=16 --with-perl
make perl-sources
cd PerlMagick/
perl Makefile.PL
make

(you do not need to play with symbolic link)