I've been reading all of last month's posts about installing
Image::Magick with Perl 5.8.0 with great optimism, but I'm finding that
when I follow all of the tips and instructions there, I'm not getting
it, and I'm ending up with problems not quite like anyone else's. I
hope there isn't something painfully obvious that I've overlooked.
I installed Perl 5.8.0 about a month ago, with tips from the O'Reilly
and developer.apple.com sites. That's all worked fine. Then this week
I decided to give imagemagick another crack. So I used fink to install
it, based on Randal's amended instructions
(http:[EMAIL PROTECTED]/msg03807.html)
When I "make all", I get no errors, but when I "make test", I get a
whole mess of undefined symbol errors -- presumably all the calls to
the imageMagick libraries. I've looked around and I can't find any
older magick installation. I thought maybe it was because the library
is fink (/sw/lib) instead of in the directories in perl's libpth (see
perl -V below); I thought the way to fix that was to set
LD_LIBRARY_PATH or DYLD_LIBRARY_PATH -- well, I set both of those to
"/sw/lib:/usr/lib:/usr/local/lib", but that doesn't change anything.
From some of the posts in the other November thread on Image::Magick
and dyld errors, I tried to guess at the relevant libraries based on
the symbols.
I'll spare the complete post, but there are some for BZ2, some for
TIFF, some JPEG, some XDPS... (I pasted in the full list generated by
the first test run by "make test", in case it helps either a guru on
the list now or someone like me googling for an answer in the future...)
I noticed that libtiff and libjpeg on my machine are older than today,
so thinking that maybe the binaries that got installed at some other
time by Fink were no good, I removed and rebuilt (using fink instead of
dselect) libtiff, and then libjpeg, but it doesn't seem to be changing
anything. Besides, imagemagick itself compiled fine against those
libraries, and I can run CLI magick tools like 'identify' with no
problem, so it has to be something with the PerlMagick part... doesn't
it?
Can anyone suggest some other strategies?
Thanks a lot...
Joe
germuska% perl -V
Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration:
Platform:
osname=darwin, osvers=6.1, archname=darwin
uname='darwin 12-247-20-64.client.attbi.com 6.1 darwin kernel
version 6.1: fri sep 6 23:24:34 pdt 2002;
root:xnuxnu-344.2.obj~2release_ppc power macintosh powerpc '
config_args='-de -Dprefix=/usr'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef
usemultiplicity=undef
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-pipe -fno-common -no-cpp-precomp
-fno-strict-aliasing -I/usr/local/include',
optimize='-O3',
cppflags='-no-cpp-precomp -pipe -fno-common -no-cpp-precomp
-fno-strict-aliasing -I/usr/local/include'
ccversion='', gccversion='3.1 20020420 (prerelease)',
gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='cc', ldflags =' -flat_namespace -L/usr/local/lib'
libpth=/usr/local/lib /usr/lib
libs=-lm -lc
perllibs=-lm -lc
libc=/usr/lib/libc.dylib, so=dylib, useshrplib=true,
libperl=libperl.dylib
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dyld.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' '
cccdlflags=' ', lddlflags=' -flat_namespace -bundle -undefined
suppress -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: USE_LARGE_FILES
Built under darwin
Compiled at Nov 10 2002 21:08:25
%ENV:
PERL5LIB="/sw/lib/perl5"
@INC:
/sw/lib/perl5/darwin
/sw/lib/perl5
/System/Library/Perl/darwin
/System/Library/Perl
/Library/Perl/darwin
/Library/Perl
/Library/Perl
/Network/Library/Perl/darwin
/Network/Library/Perl
/Network/Library/Perl
.
[build/ImageMagick-5.5.1/PerlMagick] germuska% make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"
"test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/bzlib/*.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............dyld: /usr/bin/perl Undefined symbols:
_BZ2_bzCompress
_BZ2_bzCompressEnd
_BZ2_bzCompressInit
_BZ2_bzDecompress
_BZ2_bzDecompressEnd
_BZ2_bzDecompressInit
_TIFFClientOpen
_TIFFClose
_TIFFGetField
_TIFFGetFieldDefaulted
_TIFFIsByteSwapped
_TIFFIsTiled
_TIFFNumberOfStrips
_TIFFOpen
_TIFFPrintDirectory
_TIFFReadDirectory
_TIFFReadRGBAImage
_TIFFReadRawStrip
_TIFFReadScanline
_TIFFReverseBits
_TIFFScanlineSize
_TIFFSetErrorHandler
_TIFFSetField
_TIFFSetWarningHandler
_TIFFSwabArrayOfLong
_TIFFTileSize
_TIFFWriteDirectory
_TIFFWriteScanline
_TIFFWriteTile
_XDPSCreatePixmapForEPSF
_XDPSImageFileIntoDrawable
_XDPSPixelsPerPoint
_jpeg_CreateCompress
_jpeg_CreateDecompress
_jpeg_calc_output_dimensions
_jpeg_destroy_compress
_jpeg_destroy_decompress
_jpeg_finish_compress
_jpeg_finish_decompress
_jpeg_read_header
_jpeg_read_scanlines
_jpeg_resync_to_restart
_jpeg_set_defaults
_jpeg_set_marker_processor
_jpeg_set_quality
_jpeg_simple_progression
_jpeg_start_compress
_jpeg_start_decompress
t/blob............dubious
Test returned status 0 (wstat 5, 0x5)
DIED. FAILED test 1
Failed 1/1 tests, 0.00% okay
