Image::Magick newbie

Image::Magick newbie

am 06.09.2005 04:19:37 von Ananth Chellappa

Hi,
Hopefully, this will be easy for someone else:

perl Makefile.PL LIB=xx PREFIX=xx
went off okay.

but..

Magick.xs was throwing up a lot of errors with "make" until I did this

added

MAGICK_HOME = /home/magnolia/ananth/tools/ImageMagick-6.2.4
and
-I$(MAGICK_HOME)/include to th INC list
in the Makefile

with that done, "make" finished reporting a lot of warnings from Magick.c
like:
....
Magick.c:7625: warning: unused variable `ix'
Magick.c: In function `XS_Image__Magick_QueryFont':
Magick.c:7700: warning: unused variable `ref'
Magick.c:7695: warning: unused variable `ix'
Magick.c: In function `XS_Image__Magick_QueryFontMetrics':
Magick.c:7815: warning: unused variable `ref'
Magick.c:7810: warning: unused variable `ix'
Magick.c: In function `XS_Image__Magick_QueryMultilineFontMetrics':
Magick.c:8173: warning: unused variable `ref'
...

then, when I do "make test" every test fails. I get errors like :

PERL_DL_NONLAZY=1 /usr/local/bin/perl "-MExtUtils::Command::MM" "-e"
"test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/bzlib/*.t t/jng/*.t
t/jpeg/*.t t/mpeg/*.t t/png/*.t t/ps/*.t t/tiff/*.t t/ttf/*.t t/x/*.t
t/xfig/*.t t/zlib/*.t
t/blob............Can't load
'/home/magnolia/ananth/LEARN/perl/images/PerlMagick-6.20/bli b/arch/auto/Imag
e/Magick/Magick.so'
for module Image::Magick: ld.so.1: /usr/local/bin/perl: fatal:
relocation error: file
/home/magnolia/ananth/LEARN/perl/images/PerlMagick-6.20/blib /arch/auto/Image
/Magick/Magick.so:
symbol AcquireMagickMemory: referenced symbol not found at
/usr/local/lib/perl5/5.8.3/sun4-solaris/DynaLoader.pm line 229.
at t/blob.t line 7
Compilation failed in require at t/blob.t line 7.
BEGIN failed--compilation aborted at t/blob.t line 7.
dubious
Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED test 1
Failed 1/1 tests, 0.00% okay

Any help you could give me, I'd really appreciate.

Thanks,
Ananth

PS: tee = t and dot = . in email addr.

Re: Image::Magick newbie

am 06.09.2005 10:12:15 von Sisyphus

"Ananth Chellappa" wrote in message

>
> with that done, "make" finished reporting a lot of warnings from Magick.c
> like:
> ...
> Magick.c:7625: warning: unused variable `ix'
> Magick.c: In function `XS_Image__Magick_QueryFont':
> Magick.c:7700: warning: unused variable `ref'
> Magick.c:7695: warning: unused variable `ix'
> Magick.c: In function `XS_Image__Magick_QueryFontMetrics':
> Magick.c:7815: warning: unused variable `ref'
> Magick.c:7810: warning: unused variable `ix'
> Magick.c: In function `XS_Image__Magick_QueryMultilineFontMetrics':
> Magick.c:8173: warning: unused variable `ref'
> ..

I don't think there's anything to worry about in those warnings - they're
just telling you that a variable has been declared, and then not used -
which won't really matter at all.
..
>
> then, when I do "make test" every test fails. I get errors like :
>
> PERL_DL_NONLAZY=1 /usr/local/bin/perl "-MExtUtils::Command::MM" "-e"
> "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/bzlib/*.t t/jng/*.t
> t/jpeg/*.t t/mpeg/*.t t/png/*.t t/ps/*.t t/tiff/*.t t/ttf/*.t t/x/*.t
> t/xfig/*.t t/zlib/*.t
> t/blob............Can't load
>
'/home/magnolia/ananth/LEARN/perl/images/PerlMagick-6.20/bli b/arch/auto/Imag
> e/Magick/Magick.so'
> for module Image::Magick: ld.so.1: /usr/local/bin/perl: fatal:
> relocation error: file
>
/home/magnolia/ananth/LEARN/perl/images/PerlMagick-6.20/blib /arch/auto/Image
> /Magick/Magick.so:
> symbol AcquireMagickMemory: referenced symbol not found at
> /usr/local/lib/perl5/5.8.3/sun4-solaris/DynaLoader.pm line 229.
> at t/blob.t line 7
> Compilation failed in require at t/blob.t line 7.
> BEGIN failed--compilation aborted at t/blob.t line 7.
> dubious
> Test returned status 255 (wstat 65280, 0xff00)
> DIED. FAILED test 1
> Failed 1/1 tests, 0.00% okay
>
> Any help you could give me, I'd really appreciate.
>

When perl "Can't load" one of its shared objects (Magick.so, in this
instance), it's usually because of a problem with another shared object upon
which the perl shared object (Magick.so) depends. Perhaps an ImageMagick
shared object is not being found, or there's a problem with the permissions
of an ImageMagick shared object. Or it could be that there's a mismatch
between the versions of PerlMagick and ImageMagick - though I would expect
such a mismatch would have been uncovered at an earlier stage in the build
process. (Check the PerlMagick Readme anyway.) And there are no doubt other
possibilities as well.

Couldn't find much when googling for "AcquireMagickMemory" (which is the
specific ImageMagick function that seems to be throwing a spanner in the
works), but check out:

http://studio.imagemagick.org/magick/viewtopic.php?t=2746&si d=e0c3869aa5adffaf74143274efdc31ab

http://www.codecomments.com/message240287.html

I know it's not much to go on, but I hope there's something there that
helps.

Cheers,
Rob