David Rowe wrote:
Yves de Champlain wrote:
Le 07-08-11 à 16:22, David Rowe a écrit :
I am attempting a clean reinstallation of various Macports
applications - i.e. I have renamed /opt/local as /opt/ZZlocal (so I
can go back if necessary), I have reinstalled Macports 1.5.1 into
MacOS and I am starting from the beginning.
The first two applications I attempted both fail to work. They have
both worked OK in a previous installation (though I was having
trouble updating them).
1) Gnucash apparently installed OK, but when I try to launch it, the
X11 log reports:
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
dyld: Symbol not found: __cg_jpeg_resync_to_restart
Referenced from:
/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO
Expected in: /opt/local/lib/libjpeg.62.dylib
Trace/BPT trap
Means you have a DYLD_LIBRARY_PATH defined somewhere (I think)
yves
Thanks for the suggestion. I presume you mean DYLD_LIBRARY_PATH may be
defined as an environment variable is my shell. I have just checked
and it is NOT defined.
Also, if I reinstate the old MacPorts installation (by renaming
/opt/ZZlocal), the old Gnucash 2.0.2 runs just fine.
I tried Goolging for __cg_jpeg_resync_to_restart and it looks like
this is a problem that has surfaced with several different
applications, and with Fink as well as MacPorts. The root of the
problem is confusion between the MacOS library in
/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib
and the MacPorts library in /opt/local/lib/libjpeg.dylib (an alias for
libjpeg.62.dylib)
What I am not sure is how to fix the problem.
Update - I have been investigating further:
It is true that DYLD_LIBRARY_PATH is not set in my shell at the time I
invoke gnucash.
However the file 'gnucash' is itself a shell script that does (in
gnucash 2.1.0) set DYLD_LIBRARY_PATH in a series of steps:
I put in an 'echo' command to see what the value was by the time the
gnucash binary was invoked - it was:
/opt/local/lib/gnucash::/opt/local/lib:/opt/local/lib/gnucash:
This looks sort-of OK but I don't see why the /opt/local/lib/gnucash
entry is duplicated.
I tried knocking out the setting of DYLD_LIBRARY_PATH to see what happens.
The answer is that loading proceeds a bit further - the Gnucash splash
screen appears momentarily and then it fails saying:
ERROR: In procedure dynamic-link:
ERROR: file: "libgnc-core-utils", message: "dlopen(libgnc-core-utils.so,
9): image not found"
So it is necessary to set DYLD_LIBRARY_PATH, but presumably the above
value is not right.
Does anyone know what it should be set to?
PS - for the record, the corresponding Gnucash script for the previous
version (2.0.5) (which works OK on my system) does NOT set
DYLD_LIBRARY_PATH.
David Rowe
_______________________________________________
macports-users mailing list
macports-users@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo/macports-users