The workaround that Alexander suggested below works! Octave now calls AquaTerm without a problem, just like it did before the Mac OS X Lion 10.7.3 update.
Thank you, Gabi On Wed, Feb 8, 2012 at 11:15 AM, Alexander Hansen <alexanderk.han...@gmail.com> wrote: > On 2/8/12 8:55 AM, Gabi Huiber wrote: >> Then I'm stumped. I can't find any specific setting for >> DYLD_LIBRARY_PATH, because "echo $ DYLD_LIBRARY_PATH" turns up >> nothing. I also didn't install anything new since last week, >> before the 10.7.3 update, when Octave and AquaTerm worked fine. >> >> Any ideas about how to fix this, I would greatly appreciate them. >> >> If this helps, echo $PATH says this: >> >> Gabis-Mac:~ ghuiber$ echo $PATH >> /Applications/Stata/StataMP.app/Contents/MacOS:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/texbin:/Users/ghuiber/android-sdk-macosx/tools:/Users/ghuiber/android-sdk-macosx/platform-tools >> >> Thank you, Gabi >> > > I found something. > > When I checked out the Gnuplot.app that was shipped along with the > Octave-3.4.0 OS X app, I noted the following: > > $ otool -L > /Volumes/gnuplot/Gnuplot.app//Contents/Resources/lib/libfreetype.6.dylib > /Volumes/gnuplot/Gnuplot.app//Contents/Resources/lib/libfreetype.6.dylib: > /tmp/gnuplot-i386/lib/libfreetype.6.dylib (compatibility version > 13.0.0, current version 13.2.0) > > $ grep -ir DYLD_LIBRARY_PATH /Volumes/gnuplot/Gnuplot.app/ > /Volumes/gnuplot/Gnuplot.app/Contents/Resources/bin/gnuplot:DYLD_LIBRARY_PATH="${ROOT}/lib:${DYLD_LIBRARY_PATH}" > /Volumes/gnuplot/Gnuplot.app/Contents/Resources/bin/gnuplot: > DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH}" HOME="${HOME}" > GNUHELP="${GNUHELP}" \ > > I was able to reproduce your issue. There are two things going on here: > > 1) Your original assumption was correct, and mine was not: prior to > the 10.7.3 update, libfreetype.6.dylib had > > $ otool -L /Volumes/FreeAgent\ GoFlex\ > Drive/Backups.backupdb/Fiona/Latest/MacHD/usr/X11/lib/libfreetype.6.dylib > /Volumes/FreeAgent GoFlex > Drive/Backups.backupdb/Fiona/Latest/MacHD/usr/X11/lib/libfreetype.6.dylib: > /usr/X11/lib/libfreetype.6.dylib (compatibility version 13.0.0, > current version 13.2.0) > > (Time Machine is so handy) > > and now it has > $ otool -L /usr/X11/lib/libfreetype.6.dylib > /usr/X11/lib/libfreetype.6.dylib: > /usr/X11/lib/libfreetype.6.dylib (compatibility version 14.0.0, > current version 14.2.0) > > 2) However, that shouldn't have broken Gnuplot for you. Going from > an older to a newer compatibility version of a library is fine. > > What broke it is the use of DYLD_LIBRARY_PATH internally. > > DYLD_LIBRARY_PATH is *not* analogous to LD_LIBRARY_PATH in GNU/Linux, > and it overrides the whole library lookup path, as I mentioned before. > Here's your error again: > > dyld: Library not loaded: /usr/X11/lib/libfreetype.6.dylib > Referenced from: /usr/X11/lib/libfontconfig.1.dylib > Reason: Incompatible library version: libfontconfig.1.dylib requires > version 14.0.0 or later, but libfreetype.6.dylib provides version > 13.0.0 > > What happens is: > 1) DYLD_LIBRARY_PATH is set to point to the libfreetype.6.dylib inside > of Gnuplot.app. > 2) /usr/X11/lib/libfontconfig.1.dylib would normally try to link to > /usr/X11/lib/libfreetype.6.dylib, but since DYLD_LIBRARY_PATH is > pointing at Gnuplot.app/Contents/Resources/lib, it instead tries to > link to Gnuplot.app/Contents/Resources/lib/libfreetype.6.dylib. > 3) Originally the libfreetype.6.dylib in /usr/X11/lib and > Gnuplot.app/Contents/Resource/lib were at the same version, so that > either one would satisfy libfontconfig.1.dylib. > 4) However, after the 10.7.3 update, the libfreetype.6.dylib in > Gnuplot.app is now too old for what the new libfontconfig.1.dylib is > expecting, and so you get an error. > > The error message is confusing because it says that > /usr/X11/lib/libfreetype.6.dylib wasn't loaded. It mentions this > particular library because that's what is encoded within > libfontconfig.1.dylib. > > A workaround (it worked for me, anyway) is to replace all instances of > DYLD_LIBRARY_PATH with DYLD_FALLBACK_LIBRARY_PATH in > Gnuplot.app/Contents/Resources/bin/gnuplot. > > DYLD_FALLBACK_LIBRARY_PATH doesn't override the library search path, > but rather provides a place to look if a library isn't found in the > normal paths. Its behavior is more like what GNU/Linux people expect > from LD_LIBRARY_PATH. > > Anyway, try my workaround. > -- > Alexander Hansen, Ph.D. > Fink User Liaison > http://finkakh.wordpress.com/ ------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ Octave-dev mailing list Octave-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/octave-dev