Problems with Gnucash & Gramps

David Reiser dbreiser at gmail.com
Sun Aug 12 21:28:48 PDT 2007


On 12 Aug 2007, at 8:02:55 PM, David Rowe wrote:

> 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

Yes. It was after 2.0.5 that the DYLD_LIBRARY_PATH was added to  
gnucash in various places. It is definitely needed at some point  
(testing?), because gnucash won't complete a 'make check' without it.  
But gnucash probably doesn't need the path set at runtime. I don't  
know the details well enough to propose a specific fix upstream.

So I've fixed it in the fink version by patching gnucash to set  
DYLD_FALLBACK_LIBRARY_PATH for every instance where the non-fallback  
version is set. Works for me.

> DYLD_LIBRARY_PATH.
>
> David Rowe
>
Dave
--
David Reiser
dbreiser at gmail.com






More information about the macports-users mailing list