[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Image package

From: Thomas Treichl
Subject: Re: Image package
Date: Fri, 05 Dec 2008 22:31:10 +0100
User-agent: Thunderbird (Macintosh/20081105)

Robert Fong-tom schrieb:

On Dec 4, 2008, at 3:11 AM, Thomas Treichl wrote:

Robert Fong-tom schrieb:
On Dec 3, 2008, at 4:23 PM, Thomas Treichl wrote:
Søren Hauberg schrieb:
ons, 03 12 2008 kl. 12:57 -0500, skrev Robert Fong-tom:
On Dec 3, 2008, at 2:57 AM, Søren Hauberg wrote:

tir, 02 12 2008 kl. 21:03 -0500, skrev Robert Fong-tom:
Yes I see the headers. In MacPorts they appear to be in /opt/local/
include/ImageMagick. There are also a ton of other files in the
"include" directory which may be the includes for the dependencies.
So, what does the following commands print if you run the from the

  Magick++-config --cppflags
I get the following:   -I/opt/local/include/ImageMagick
  Magick++-config --ldflags
I get the following: -L/opt/local/lib -L/opt/local/lib -L/usr/X11R6/ lib -L/opt/local/lib -lfreetype -lz -Wl,-framework,CoreServices -Wl,- framework,ApplicationServices -L/opt/local/lib
? Also try to run the from Octave using the 'system' command, i.e.

  system ("Magick++-config --cppflags")
I get the following: -I/Applications/ include/ImageMagick
ans = 0
  system ("Magick++-config --ldflags")
I get: -L/Applications/ -L/usr/ X11R6/lib
ans = 0
Okay, I'm confused. When you run 'Magick++-config --cppflags' from the
terminal you get the right path to the header files, but when you run
the command from within Octave, you get the wrong path to the header
files. Is that right? If so, then I guess this means you have to set
some environment variable before starting Octave. I don't even know how
to start Octave on a Mac, so I doubt I'll be able to help you. Perhaps
we have some Mac-experts on the list, that are able to say something

There must be installed two different versions of ImageMagick in two different locations. Otherwise the system command shouldn't produce a different result. The first one is in /opt/local/bin that comes with MacPorts, please check from

  ~$ which Magick++-config
 I get  : /opt/local/bin/Magick++-config
  ~$ Magick++-config --version
 I get: 6.4.6 Q16

The other one must have been installed manually because I currently don't pack ImageMagick/GraphicsMagick into the stable 3.0.x versions. And the return argument of the system command from above is strange. Please check in

  octave-3.0.3> system ("which Magick++-config")
I get: /Applications/
ans = 0
  octave-3.0.3> system ("Magick++-config --version")
I get: 6.4.6 Q16
ans = 0

What I've found out some time ago is that the sources of ImageMagick have been changed from 5.x.x to 6.x.x. I am not able to find out which version of ImageMagick should be used to correctly install the Octave-Forge package image-1.0.8.tar.gz.


You are right about there being two version. Before using MacPorts to port ImageMagick, I made the mistake of installing it manually from the ImageMagick ftp site using the UNIX installation instructions. This did not work with Octave, so I renamed all the ImageMagick directories/files I could find (but did not delete them just in case). I guess there must be some statement in the Octave set-up that is incorrect. Do you know how to fix this?

I think I don't know exactly what you mean here, but if you need a fresh unmodified without a 'Magick++-config' program in


then why not just moving into trash and then install it again?



I blew away and reinstalled, and now Octave seem to be getting the location of ImageMagick correctly. However I still am having problems installing the Image package. The error messages I get now are: 1) /usr/bin/ld: warning can't open dynamic library: /tmp/dependencies-i386/lib/libz.1.dylib referenced from: /Applications/ (checking for undefined symbols may be affected) (No such file or directory, errno = 2)
/usr/bin/ld: Undefined symbols:

In the file 'src/Makefile' of the package image-1.0.8.tar.gz it is not enough to get back the --cppflags and --ldflags from Magick++-config. At least on a Mac (but I expect this won't make any difference on Linux, too) it is necessary to get back --libs, otherwise the installation of image-1.0.8 fails because of the linker error Bob reported before.

I changed the following line in 'src/Makefile'

        $(MKOCTFILE) $< `Magick++-config --cppflags` `Magick++-config --ldflags`


        $(MKOCTFILE) $< `Magick++-config --cppflags --ldflags --libs`

and then was able to successfully install image-1.0.8.tar.gz in, too.

Bob, I send you a modified package offside any mailing-list. Please try to install that one instead and report back if this works for you so that we can think about making a modification in the sources.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]