Page 1 of 1

Trying to build on win7 64 bits with minGW32

Posted: 2012-07-14T07:04:39-07:00
by laurentm
Hi.

I looked everywhere before coming here. I'm trying to build from source ImageMagick (without adding delegates) on windows on two PC, one is win7 32 bits, the other is win7 64 bits. They both have mingw32.

On the 32 bits building from source worked by using :
./configure --prefix=my_installation_path --disable-shared
make
make install
g++ -o magick.exe ../main.cpp -L../lib -lMagickCore -lMagick++ -I../include/ImageMagick

(the main.cpp opens smile.gif and writes smile.bmp)

The same sequence on 64 bits gives a lot of errors at compiling :

../lib/libMagick++.a(Image.o): In function `ZN6Magick5Image12channelDepthEN10MagickCore11ChannelTypeE':
c:/.../Magick++/lib/Image.cpp:540: undefined reference to `GetExceptionInfo'
c:/.../Magick++/lib/Image.cpp:542: undefined reference to `GetImageChannelDepth'
c:/.../Magick++/lib/Image.cpp:544: undefined reference to `DestroyExceptionInfo'
../lib/libMagick++.a(Image.o): In function `ZN6Magick5Image15quantumOperatorEN10MagickCore11ChannelTypeENS1_22MagickEvaluateOperatorEd':
c:/.../Magick++/lib/Image.cpp:1513: undefined reference to `GetExceptionInfo'
c:/.../Magick++/lib/Image.cpp:1514: undefined reference to `EvaluateImageChannel'
c:/.../Magick++/lib/Image.cpp:1516: undefined reference to `DestroyExceptionInfo'
../lib/libMagick++.a(Image.o): In function `ZN6Magick5Image15quantumOperatorEiijjN10MagickCore11ChannelTypeENS1_22MagickEvaluateOperatorEd':
c:/.../Magick++/lib/Image.cpp:1527: undefined reference to `GetExceptionInfo'
c:/.../Magick++/lib/Image.cpp:1534: undefined reference to `CropImage'
c:/.../Magick++/lib/Image.cpp:1536: undefined reference to `EvaluateImageChannel'
c:/.../Magick++/lib/Image.cpp:1538: undefined reference to `CompositeImage'
c:/.../Magick++/lib/Image.cpp:1539: undefined reference to `DestroyImageList'
c:/.../Magick++/lib/Image.cpp:1541: undefined reference to `DestroyExceptionInfo'
...

I tried to add many libraries like -lMagickWand -lgdi32 -lm -lgomp -lltdl etc but I could not make things work. Maybe I'm doing something obviously wrong, I hope someone can give me a tip.

Thank you for your attention.