I'm trying to compile ImageMagick 6.4.3 (or 6.3.7) with MSYS, and I'm running into a brick wall creating libMagick++.dll.a
using "configure --enable-shared --without-perl"
then "make" gives
...
/bin/sh ./libtool --silent --tag=CXX --mode=link g++ -g -O2 -Wall -W -version-info 1:0:0 -L/C/GTK/lib -Wl,--rpath -Wl,/C/GTK/lib -lfreetype -lz -o Magick++/lib/libMagick++.la -rpath /usr/local/lib Magick++/lib/Blob.lo Magick++/lib/BlobRef.lo Magick++/lib/CoderInfo.lo Magick++/lib/Color.lo Magick++/lib/Drawable.lo Magick++/lib/Exception.lo Magick++/lib/Functions.lo Magick++/lib/Geometry.lo Magick++/lib/Image.lo Magick++/lib/ImageRef.lo Magick++/lib/Montage.lo Magick++/lib/Options.lo Magick++/lib/Pixels.lo Magick++/lib/STL.lo Magick++/lib/Thread.lo Magick++/lib/TypeMetric.lo magick/libMagickCore.la wand/libMagickWand.la
libtool: link: warning: undefined symbols not allowed in i686-pc-mingw32 shared libraries
...
How do I find out what the undefined symbols are, or which file has them?
libMagickCore.dll.a and libMagickWand.dll.a are created successfully. I couldn't see any relevant hits on Google. Am I the only one seeing this under msys?
Thanks
Chris
Undefined symbols preventing creation of libMagick++.dll.a?
Re: Undefined symbols preventing creation of libMagick++.dll.a?
We have heard that there are problems with C++ exceptions under MinGW with a shared library. Try this instead:
- configure --disabled-shared --without-perl
make
Re: Undefined symbols preventing creation of libMagick++.dll.a?
Unfortunately, I'm trying to compile this for linking into a module in another Open Source program, which requires the library to be shared.
I think I'm out of my depth trying to work around this. I'll defer to others more knowledgeable than myself.
Thanks,
Chris
I think I'm out of my depth trying to work around this. I'll defer to others more knowledgeable than myself.
Thanks,
Chris