Stand alone executables for Mac

Questions and postings pertaining to the usage of ImageMagick regardless of the interface. This includes the command-line utilities, as well as the C and C++ APIs. Usage questions are like "How do I use ImageMagick to create drop shadows?".
User avatar
magick
Site Admin
Posts: 11100
Joined: 2003-05-31T11:32:55-07:00

Re: Stand alone executables for Mac

Post by magick » 2010-06-16T06:08:55-07:00

ImageMagick contains hard coded paths
Use the configure script command line option, --disable-installed, to build an instance of ImageMagick that does not require a hard-coded path to the configuration files. This option undef's MAGICKCORE_INSTALLED_SUPPORT define. This allows ImageMagick to find its configuration files in the same path as the executable (e.g. convert) or relative to the MAGICK_HOME environment variable. Add -debug configure to your convert command line to track where ImageMagick searches for its configuration files.

morth

Re: Stand alone executables for Mac

Post by morth » 2010-06-16T10:57:36-07:00

That's exactly what I needed, thanks. I found another issue though, the configure script automatically checks for /opt/local and /sw and add those to the paths searched for libraries. When I distribute a binary version I can't depend on those being there. Perhaps the disable-install option (or another one) should disable that check.

fredericcox
Posts: 1
Joined: 2012-07-27T00:05:14-07:00
Authentication code: 15

Re: Stand alone executables for Mac

Post by fredericcox » 2012-07-27T00:09:39-07:00

Did you ever found a solution for this? I'm in need for a standalone "convert" program which can handle BMP,JPG,JPEG,PNG,PDF,TIFF

Can anyone help me on this? I have little experience in building ImageMagick .. :(

mr.t
Posts: 2
Joined: 2012-12-07T15:02:38-07:00
Authentication code: 6789

Re: Stand alone executables for Mac

Post by mr.t » 2012-12-08T03:59:16-07:00

I have the same problems.

I am trying to build a universal binary for mac. with lcms support.
the lcms compiles fine.

but when i try building imageMagick itself
like this:

./configure --enable-delegate-build --disable-shared --disable-dependency-tracking --enable-osx-universal-binary --prefix=/ImageMagick-6.4.9-4

I get a bunch of errors like these:

configure: WARNING: complex.h: present but cannot be compiled
configure: WARNING: complex.h: check for missing prerequisite headers?
configure: WARNING: complex.h: see the Autoconf documentation
configure: WARNING: complex.h: section "Present But Cannot Be Compiled"
configure: WARNING: complex.h: proceeding with the compiler's result
configure: WARNING: ## ----------------------------------------- ##
configure: WARNING: ## Report this to http://www.imagemagick.org ##
configure: WARNING: ## ----------------------------------------- ##

Code: Select all

configuring ImageMagick 6.8.0-8
checking build system type... x86_64-apple-darwin11.4.2
checking host system type... x86_64-apple-darwin11.4.2
checking target system type... x86_64-apple-darwin11.4.2
checking whether build environment is sane... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for a thread-safe mkdir -p... config/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... none
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) none
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... none
checking for gcc option to accept ISO C99... -std=gnu99
checking for gcc -std=gnu99 option to accept ISO Standard C... (cached) -std=gnu99
checking how to run the C preprocessor... gcc -E
checking for a sed that does not truncate output... /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking how to print strings... printf
checking for ld used by gcc -std=gnu99... /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld
checking if the linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) is GNU ld... no
checking for gcc -std=gnu99 option to accept ISO C99... (cached) -std=gnu99
checking whether gcc -std=gnu99 -std=gnu99 and cc understand -c and -o together... yes
checking CFLAGS for maximum warnings... -Wall
checking for C compiler vendor... gnu
checking whether make sets $(MAKE)... (cached) yes
checking whether ln -s works... yes
checking for gawk... (cached) awk
checking if malloc debugging is wanted... no
checking for __attribute__... yes
checking for gcc architecture flag... 
checking for gcc architecture flag... unknown
checking for pkg-config... /opt/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking if LD -Wl,--version-script works... no
checking for linker lazyload option... none
checking whether pthreads work with -pthread... no
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... no
checking whether pthreads work with -pthreads... no
checking whether pthreads work with -mthreads... no
checking for the pthreads library -lpthread... no
checking whether pthreads work with --thread-safe... no
checking whether pthreads work with -mt... no
checking for the pthreads library -llpthread... no
checking for pthread-config... no
checking for gcc -std=gnu99 -std=gnu99 option to support OpenMP... (cached) unsupported
checking whether pthreads work with -pthread... no
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... no
checking whether pthreads work with -pthreads... no
checking whether pthreads work with -mthreads... no
checking for the pthreads library -lpthread... no
checking whether pthreads work with --thread-safe... no
checking whether pthreads work with -mt... no
checking for the pthreads library -llpthread... no
checking for pthread-config... (cached) no
checking whether we are using the Microsoft C compiler... no
checking CL/cl.h usability... no
checking CL/cl.h presence... no
checking for CL/cl.h... no
checking OpenCL/cl.h usability... no
checking OpenCL/cl.h presence... yes
configure: WARNING: OpenCL/cl.h: present but cannot be compiled
configure: WARNING: OpenCL/cl.h:     check for missing prerequisite headers?
configure: WARNING: OpenCL/cl.h: see the Autoconf documentation
configure: WARNING: OpenCL/cl.h:     section "Present But Cannot Be Compiled"
configure: WARNING: OpenCL/cl.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for OpenCL/cl.h... no
checking windows.h usability... no
checking windows.h presence... no
checking for windows.h... no
checking for OpenCL library... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... unknown
checking for _LARGE_FILES value needed for large files... unknown
checking for _LARGEFILE_SOURCE value needed for large files... unknown
checking for native large file support... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm
checking the name lister (/usr/bin/nm) interface... BSD nm
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-apple-darwin11.4.2 file names to x86_64-apple-darwin11.4.2 format... func_convert_file_noop
checking how to convert x86_64-apple-darwin11.4.2 file names to toolchain format... func_convert_file_noop
checking for /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... no
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm output from gcc -std=gnu99 -std=gnu99 object... failed
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... no
checking for -exported_symbols_list linker flag... no
checking for -force_load linker flag... no
checking for dlfcn.h... no
checking for objdir... .libs
checking if gcc -std=gnu99 -std=gnu99 supports -fno-rtti -fno-exceptions... no
checking for gcc -std=gnu99 -std=gnu99 option to produce PIC... -fno-common -DPIC
checking if gcc -std=gnu99 -std=gnu99 PIC flag -fno-common -DPIC works... no
checking if gcc -std=gnu99 -std=gnu99 static flag -static works... no
checking if gcc -std=gnu99 -std=gnu99 supports -c -o file.o... no
checking if gcc -std=gnu99 -std=gnu99 supports -c -o file.o... (cached) no
checking if we can lock with hard links... yes
checking whether the gcc -std=gnu99 -std=gnu99 linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin11.4.2 dyld
checking how to hardcode library paths into programs... immediate
checking for dlopen in -ldl... no
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld
checking if the linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) is GNU ld... no
checking whether the g++ linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) supports shared libraries... yes
libtool.m4: error: problem compiling CXX test program
checking for g++ option to produce PIC... -fno-common -DPIC
checking if g++ PIC flag -fno-common -DPIC works... no
checking if g++ static flag -static works... no
checking if g++ supports -c -o file.o... no
checking if g++ supports -c -o file.o... (cached) no
checking if we can lock with hard links... yes
checking whether the g++ linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin11.4.2 dyld
checking how to hardcode library paths into programs... immediate
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether gcc -std=gnu99 -std=gnu99 needs -traditional... no
checking for ANSI C header files... (cached) yes
checking whether to enable assertions... yes
checking for dirent.h that defines DIR... no
checking for sys/ndir.h that defines DIR... no
checking for sys/dir.h that defines DIR... no
checking for ndir.h that defines DIR... no
checking for library containing opendir... no
checking arm/limits.h usability... no
checking arm/limits.h presence... no
checking for arm/limits.h... no
checking complex.h usability... no
checking complex.h presence... yes
configure: WARNING: complex.h: present but cannot be compiled
configure: WARNING: complex.h:     check for missing prerequisite headers?
configure: WARNING: complex.h: see the Autoconf documentation
configure: WARNING: complex.h:     section "Present But Cannot Be Compiled"
configure: WARNING: complex.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for complex.h... no
checking errno.h usability... no
checking errno.h presence... yes
configure: WARNING: errno.h: present but cannot be compiled
configure: WARNING: errno.h:     check for missing prerequisite headers?
configure: WARNING: errno.h: see the Autoconf documentation
configure: WARNING: errno.h:     section "Present But Cannot Be Compiled"
configure: WARNING: errno.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for errno.h... no
checking fcntl.h usability... no
checking fcntl.h presence... yes
configure: WARNING: fcntl.h: present but cannot be compiled
configure: WARNING: fcntl.h:     check for missing prerequisite headers?
configure: WARNING: fcntl.h: see the Autoconf documentation
configure: WARNING: fcntl.h:     section "Present But Cannot Be Compiled"
configure: WARNING: fcntl.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for fcntl.h... no
checking limits.h usability... no
checking limits.h presence... yes
configure: WARNING: limits.h: present but cannot be compiled
configure: WARNING: limits.h:     check for missing prerequisite headers?
configure: WARNING: limits.h: see the Autoconf documentation
configure: WARNING: limits.h:     section "Present But Cannot Be Compiled"
configure: WARNING: limits.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for limits.h... no
checking linux/unistd.h usability... no
checking linux/unistd.h presence... no
checking for linux/unistd.h... no
checking locale.h usability... no
checking locale.h presence... yes
configure: WARNING: locale.h: present but cannot be compiled
configure: WARNING: locale.h:     check for missing prerequisite headers?
configure: WARNING: locale.h: see the Autoconf documentation
configure: WARNING: locale.h:     section "Present But Cannot Be Compiled"
configure: WARNING: locale.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for locale.h... no
checking machine/param.h usability... no
checking machine/param.h presence... yes
configure: WARNING: machine/param.h: present but cannot be compiled
configure: WARNING: machine/param.h:     check for missing prerequisite headers?
configure: WARNING: machine/param.h: see the Autoconf documentation
configure: WARNING: machine/param.h:     section "Present But Cannot Be Compiled"
configure: WARNING: machine/param.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for machine/param.h... no
checking mach-o/dyld.h usability... no
checking mach-o/dyld.h presence... yes
configure: WARNING: mach-o/dyld.h: present but cannot be compiled
configure: WARNING: mach-o/dyld.h:     check for missing prerequisite headers?
configure: WARNING: mach-o/dyld.h: see the Autoconf documentation
configure: WARNING: mach-o/dyld.h:     section "Present But Cannot Be Compiled"
configure: WARNING: mach-o/dyld.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for mach-o/dyld.h... no
checking OS.h usability... no
checking OS.h presence... no
checking for OS.h... no
checking process.h usability... no
checking process.h presence... no
checking for process.h... no
checking sun_prefetch.h usability... no
checking sun_prefetch.h presence... no
checking for sun_prefetch.h... no
checking stdarg.h usability... no
checking stdarg.h presence... yes
configure: WARNING: stdarg.h: present but cannot be compiled
configure: WARNING: stdarg.h:     check for missing prerequisite headers?
configure: WARNING: stdarg.h: see the Autoconf documentation
configure: WARNING: stdarg.h:     section "Present But Cannot Be Compiled"
configure: WARNING: stdarg.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for stdarg.h... no
checking sys/ipc.h usability... no
checking sys/ipc.h presence... yes
configure: WARNING: sys/ipc.h: present but cannot be compiled
configure: WARNING: sys/ipc.h:     check for missing prerequisite headers?
configure: WARNING: sys/ipc.h: see the Autoconf documentation
configure: WARNING: sys/ipc.h:     section "Present But Cannot Be Compiled"
configure: WARNING: sys/ipc.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for sys/ipc.h... no
checking sys/mman.h usability... no
checking sys/mman.h presence... yes
configure: WARNING: sys/mman.h: present but cannot be compiled
configure: WARNING: sys/mman.h:     check for missing prerequisite headers?
configure: WARNING: sys/mman.h: see the Autoconf documentation
configure: WARNING: sys/mman.h:     section "Present But Cannot Be Compiled"
configure: WARNING: sys/mman.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for sys/mman.h... no
checking sys/resource.h usability... no
checking sys/resource.h presence... yes
configure: WARNING: sys/resource.h: present but cannot be compiled
configure: WARNING: sys/resource.h:     check for missing prerequisite headers?
configure: WARNING: sys/resource.h: see the Autoconf documentation
configure: WARNING: sys/resource.h:     section "Present But Cannot Be Compiled"
configure: WARNING: sys/resource.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for sys/resource.h... no
checking sys/syslimits.h usability... no
checking sys/syslimits.h presence... yes
configure: WARNING: sys/syslimits.h: present but cannot be compiled
configure: WARNING: sys/syslimits.h:     check for missing prerequisite headers?
configure: WARNING: sys/syslimits.h: see the Autoconf documentation
configure: WARNING: sys/syslimits.h:     section "Present But Cannot Be Compiled"
configure: WARNING: sys/syslimits.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for sys/syslimits.h... no
checking sys/time.h usability... no
checking sys/time.h presence... yes
configure: WARNING: sys/time.h: present but cannot be compiled
configure: WARNING: sys/time.h:     check for missing prerequisite headers?
configure: WARNING: sys/time.h: see the Autoconf documentation
configure: WARNING: sys/time.h:     section "Present But Cannot Be Compiled"
configure: WARNING: sys/time.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for sys/time.h... no
checking sys/timeb.h usability... no
checking sys/timeb.h presence... yes
configure: WARNING: sys/timeb.h: present but cannot be compiled
configure: WARNING: sys/timeb.h:     check for missing prerequisite headers?
configure: WARNING: sys/timeb.h: see the Autoconf documentation
configure: WARNING: sys/timeb.h:     section "Present But Cannot Be Compiled"
configure: WARNING: sys/timeb.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for sys/timeb.h... no
checking sys/times.h usability... no
checking sys/times.h presence... yes
configure: WARNING: sys/times.h: present but cannot be compiled
configure: WARNING: sys/times.h:     check for missing prerequisite headers?
configure: WARNING: sys/times.h: see the Autoconf documentation
configure: WARNING: sys/times.h:     section "Present But Cannot Be Compiled"
configure: WARNING: sys/times.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for sys/times.h... no
checking sys/wait.h usability... no
checking sys/wait.h presence... yes
configure: WARNING: sys/wait.h: present but cannot be compiled
configure: WARNING: sys/wait.h:     check for missing prerequisite headers?
configure: WARNING: sys/wait.h: see the Autoconf documentation
configure: WARNING: sys/wait.h:     section "Present But Cannot Be Compiled"
configure: WARNING: sys/wait.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for sys/wait.h... no
checking wchar.h usability... no
checking wchar.h presence... yes
configure: WARNING: wchar.h: present but cannot be compiled
configure: WARNING: wchar.h:     check for missing prerequisite headers?
configure: WARNING: wchar.h: see the Autoconf documentation
configure: WARNING: wchar.h:     section "Present But Cannot Be Compiled"
configure: WARNING: wchar.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for wchar.h... no
checking xlocale.h usability... no
checking xlocale.h presence... yes
configure: WARNING: xlocale.h: present but cannot be compiled
configure: WARNING: xlocale.h:     check for missing prerequisite headers?
configure: WARNING: xlocale.h: see the Autoconf documentation
configure: WARNING: xlocale.h:     section "Present But Cannot Be Compiled"
configure: WARNING: xlocale.h: proceeding with the compiler's result
configure: WARNING:     ## ----------------------------------------- ##
configure: WARNING:     ## Report this to http://www.imagemagick.org ##
configure: WARNING:     ## ----------------------------------------- ##
checking for xlocale.h... no
checking for stdbool.h that conforms to C99... no
checking for _Bool... no
checking for working volatile... no
checking for preprocessor stringizing operator... yes
checking whether stat file-mode macros are broken... yes
checking whether time.h and sys/time.h may both be included... no
checking whether struct tm is in sys/time.h or time.h... sys/time.h
checking for struct tm.tm_zone... no
checking whether tzname is declared... no
checking for tzname... no
checking whether #! works in shell scripts... yes
checking for inline... no
checking for C/C++ restrict keyword... no
checking whether byte ordering is bigendian... yes
checking for int8_t... no
checking for int16_t... no
checking for int32_t... no
checking for int64_t... no
checking for long long int... no
checking for intmax_t... no
checking for intptr_t... no
checking for long double... yes
checking for long double with more range or precision than double... no
checking for long long int... (cached) no
checking for mbstate_t... no
checking for mode_t... no
checking for off_t... no
checking for pid_t... no
checking for size_t... no
checking for ssize_t... no
checking for uid_t in sys/types.h... yes
checking for uint8_t... no
checking for uint16_t... no
checking for uint32_t... no
checking for uint64_t... no
checking for unsigned long long int... no
checking for uintmax_t... no
checking for uintptr_t... no
checking for unsigned long long int... (cached) no
checking whether char is unsigned... yes
checking for float_t... no
checking for double_t... no
checking size of float_t... 0
checking size of double_t... 0
checking size of float... 0
checking size of double... 0
checking size of long double... configure: error: in `/Users/marcTiedemann/ImageMagick-6.8.0-8':
configure: error: cannot compute sizeof (long double)
See `config.log' for more details
these dont happen if i am not enabling universal binary. and i have a slight feeling it might have to do something with 32 and 64bits.
but as i am not expierienced in these kind of things i really don't know where to inverstigate further.

like others here. i am simply trying to make a version of image magick with another delegate to ship with an application to customers.
if you have other good ways to do this i am happy to hear your ideas as well.
size doesn't really matter. just simplicity.

thongdoan
Posts: 2
Joined: 2015-07-05T12:15:53-07:00
Authentication code: 1151

Re: Stand alone executables for Mac

Post by thongdoan » 2015-07-05T12:42:24-07:00

Dear Everyone,

I just build success ImageMagick on my OS X 10.10 with tiff delegate
with steps:

BUILD TIFF
download TIFF, cd to TIFF directory

./configure --enable-static --disable-shared --prefix=/libTiff
make
sudo make install

BUILD ImageMagick
download, cd ImageMagick Folder

./configure --enable-delegate-build --enable-static --disable-shared --disable-dependency-tracking LDFLAGS='-L/libTiff/lib' CPPFLAGS='-I/libTiff/include' --prefix=/ImageMagick-6.4.9-10
make
sudo make install

-------------------------------------------------------------
then I can see tools at folder: /ImageMagick-6.4.9-10

But I can not build it with : --enable-osx-universal-binary

I see on file: configure.ac

Code: Select all

dnl Platform-specific stuff
case "$host" in
*darwin*)
  dnl OS X universal binary support, requires --disable-dependency-tracking
  AC_ARG_ENABLE(osx-universal-binary,
        AC_HELP_STRING([--enable-osx-universal-binary],
           [build universal binary on OS X [[default=no]]]),
        [build_osxuniversal="${enableval}"], [build_osxuniversal=no])
  
  if test "${build_osxuniversal}" != no ; then
    if test "$enable_dependency_tracking" != no ; then
      AC_MSG_ERROR([--enable-osx-universal-binary requires --disable-dependency-tracking.
Please re-run configure with these options:
  --disable-dependency-tracking --enable-osx-universal-binary
        ])
    fi
    CFLAGS="$CFLAGS -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
    CXXFLAGS="$CXXFLAGS -isysroot /Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
    LDFLAGS="$LDFLAGS -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk -arch ppc -arch i386"
  fi
esac
It look like require MacOSX10.5.sdk with options: --enable-osx-universal-binary,
so if my app don't support OS X 10.5, no need --enable-osx-universal-binary ?

User avatar
magick
Site Admin
Posts: 11100
Joined: 2003-05-31T11:32:55-07:00

Re: Stand alone executables for Mac

Post by magick » 2015-07-05T17:12:06-07:00

ImageMagick supports two build modes, a system install with hardcoded paths, or a "non-installed" version which uses relative paths for purposes such as yours (bundled with other software). Use the --disable-installed configure script command-line option then 'make' the distribution. You should then be able to copy the executables and the XML configurations files into your application folder. To see the portable distribution of ImageMagick in action, download and run http://www.imagemagick.org/download/bin ... 16-x64.zip under Windows. Its a good example of how to bundle the ImageMagick software for a portable distribution.

thongdoan
Posts: 2
Joined: 2015-07-05T12:15:53-07:00
Authentication code: 1151

Re: Stand alone executables for Mac

Post by thongdoan » 2015-07-05T20:13:39-07:00

Thanks very much for your reply, I will try to do it

jwoelper
Posts: 7
Joined: 2012-04-25T09:14:34-07:00
Authentication code: 13

Re: Stand alone executables for Mac

Post by jwoelper » 2016-10-27T08:21:05-07:00

Because this thread got a good number of views and still left me a bit puzzled, I believe I found a rather simple solution as outlined here:

http://blog.schdbr.de/imagemagic-osx-st ... ble-build/

In short, this is quite easy using homebrew:

brew edit imagemagick
in def install:
--disable-shared to disallow shared libs
then build:
brew install imagemagick --without-modules --with-zero-configuration

gave me what I wanted (including freetype)
Delegates (built-in): bzlib freetype jng jpeg lzma png tiff xml zlib

Also Mac Photoshop comes with a static convert included (Those sneaky guys):
"/Applications/Adobe Photoshop CC 2015/Adobe Photoshop CC 2015.app/Contents/MacOS/convert"

Post Reply