Building from source, MinGW 64 on 64 bit windows 7

Questions and postings pertaining to the development of ImageMagick, feature enhancements, and ImageMagick internals. ImageMagick source code and algorithms are discussed here. Usage questions which are too arcane for the normal user list should also be posted here.
Post Reply
squeaky
Posts: 2
Joined: 2011-10-31T12:00:16-07:00
Authentication code: 8675308

Building from source, MinGW 64 on 64 bit windows 7

Post by squeaky »

Hey and hello. First of all thank you for magnificent piece of software ImageMagick is.

I successfully built ImageMagick shared objects from source on Mac OSX, Linux 32 and 64 bit and 32 Windows XP. But can't get it to work on 64bit Windows 7.

I'm using MSYS and 64 bit build of MinGW from http://mingw-w64.sourceforge.net/.

6.7.3-2 source.

This is how I configure imagick:

Code: Select all

$ CFLAGS="-I`pwd`/../include" LDFLAGS="-L`pwd`/../lib" ./configure --prefix=`pwd`/.. --enable-static=no --enable-shared=yes --disable-installed --without-frozenpaths --without-x --without-magick-plus-plus
And this is what I get when configure script finishes:

Code: Select all

Options used to compile and link:
  PREFIX          = /c/prefix/ImageMagick-6.7.3-2/..
  EXEC-PREFIX     = /c/prefix/ImageMagick-6.7.3-2/..
  VERSION         = 6.7.3
  CC              = gcc -std=gnu99 -std=gnu99
  CFLAGS          = -fopenmp -I/c/prefix/ImageMagick-6.7.3-2/../include -Wall
  CPPFLAGS        = -I/c/prefix/ImageMagick-6.7.3-2/../include/ImageMagick -D_DL
L -D_MT
  PCFLAGS         = -fopenmp -D_DLL -D_MT
  DEFS            = -DHAVE_CONFIG_H
  LDFLAGS         = -L/c/prefix/ImageMagick-6.7.3-2/../lib
  MAGICK_LDFLAGS  = -L/c/prefix/ImageMagick-6.7.3-2/../lib -L/c/prefix/ImageMagi
ck-6.7.3-2/../lib
  LIBS            = -lMagickCore -ljpeg -lpng15 -lfftw3 -lz -lgdi32 -lm -lgomp -
lpthread
  CXX             = g++
  CXXFLAGS        = -g -O2
  FEATURES        = OpenMP
but make step fails and I think it's related to ltdl:

Code: Select all

  CCLD   ltdl/loadlibrary.la
copying selected object files to avoid basename conflicts...
  CCLD   ltdl/libltdlc.la
+2The system cannot find the file specified.
libltdlcS.c:37:44: error: 'loadlibrary_LTX_get_vtable' undeclared here (not in a
 function)
make[1]: *** [ltdl/libltdlc.la] Error 1
make[1]: Leaving directory `/c/prefix/ImageMagick-6.7.3-2'
make: *** [all] Error 2
I'm using exactly the same approach on 32 bit windows (the only thing that differs is 32 bit MinGW). Also the dependencies (libz, libjpeg and libpng) built on 64 bit Windows 7 without problems.

If anyone knows how to fix that I would be very glad.
Post Reply