When building PerlMagick from ImageMagick 6.3.0.1 the build fails
with the errorlog shown below.

The problem seems to stem from the wrong order of link switches
in the MakeMaker generated makefile and can be fixed with the
attached patch to
   /lib/perl5/5.8/ExtUtils/MM_Unix.pm .

  Volker


Running Mkbootstrap for Image::Magick ()
chmod 644 Magick.bs
rm -f blib/arch/auto/Image/Magick/Magick.dll
LD_RUN_PATH="" ld2  -L../magick/.libs -lMagick  -s -L/usr/local/lib
Magick.o  -o blib/arch/auto/Image/Magick/Magick.dll
/usr/lib/perl5/5.8/cygwin/CORE/libperl.dll.a -L/usr/lib -lfreetype -lz
-L/usr/lib -llcms -ltiff -lfreetype -ljpeg -lbz2 -lz -lpthread -lm
-lpthread
gcc -shared -o  Magick.dll -Wl,--out-implib=libMagick.dll.a
-Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--stack,8388608
-Wl,--enable-auto-image-base \
-L../magick/.libs -lMagick -s -L/usr/local/lib Magick.o
/usr/lib/perl5/5.8/cygwin/CORE/libperl.dll.a -L/usr/lib -lfreetype -lz
-L/usr/lib -llcms -ltiff -lfreetype -ljpeg -lbz2 -lz -lpthread -lm -lpthread
Magick.o:Magick.c:(.text+0x1df): undefined reference to
`_AcquireMagickMemory'
Magick.o:Magick.c:(.text+0x1fa): undefined reference to
`_ResizeMagickMemory'

( snip lots of undefined references )

Magick.o:Magick.c:(.text+0x28e89): undefined reference to `_SetErrorHandler'
Creating library file: libMagick.dll.a
collect2: ld returned 1 exit status
perlld: *** system() failed to execute
gcc -shared -o  Magick.dll -Wl,--out-implib=libMagick.dll.a
-Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--stack,8388608
-Wl,--enable-auto-image-base \
-L../magick/.libs -lMagick -s -L/usr/local/lib Magick.o
/usr/lib/perl5/5.8/cygwin/CORE/libperl.dll.a -L/usr/lib -lfreetype -lz
-L/usr/lib -llcms -ltiff -lfreetype -ljpeg -lbz2 -lz -lpthread -lm -lpthread

make[1]: *** [blib/arch/auto/Image/Magick/Magick.dll] Error 2
make[1]: Leaving directory
`/usr/src/im6301/ImageMagick-6.3.0.1-1/build/PerlMagick'

-- 
PGP/GPG key  (ID: 0x9F8A785D)  available  from  wwwkeys.de.pgp.net
key-fingerprint 550D F17E B082 A3E9 F913  9E53 3D35 C9BA 9F8A 785D
--- /lib/perl5/5.8/ExtUtils/MM_Unix.pm.org      2006-10-29 14:32:59.093750000 
-0500
+++ /lib/perl5/5.8/ExtUtils/MM_Unix.pm  2006-10-29 14:34:24.546875000 -0500
@@ -1135,8 +1135,8 @@
     }
 
     push(@m,
-'      LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) '.$ldrun.' $(LDDLFLAGS) '.$ldfrom.
-' $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) $(PERL_ARCHIVE) '.$libs.' 
$(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) $(INST_DYNAMIC_FIX)');
+'      LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) '.$ldrun.' '.$ldfrom.
+' $(LDDLFLAGS) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) $(PERL_ARCHIVE) '.$libs.' 
$(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) $(INST_DYNAMIC_FIX)');
     push @m, '
        $(CHMOD) $(PERM_RWX) $@
 ';

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to