Difficulty building on MacOSX
jralls at ceridwen.us
Tue May 5 21:18:09 EDT 2015
> On May 5, 2015, at 5:08 PM, Mike Alexander <mta at umich.edu> wrote:
> I'm having trouble building the X window version of Gnucash with the recent changes to use Boost for data and time on MacOSX 10.10.3 with XCode 6.3.1. I've tried using both clang as provided by XCode and GCC 4.8 as provided by MacPorts and get similar failures. In each case either the first or second attempt to run guild as part of the make fails with the error
> *** error for object 0x7fa6a8413178: incorrect checksum for freed object - object was probably modified after being freed.
> This happens when some guile code (either unittest-support.scm or core-utils.scm) tries to load a GnuCash extension which causes the timezone tables to be initialized. I've had at least two different stack traces leading up to this failure. An example of each is in <https://www.dropbox.com/sh/wghtw6xnqv4ygc5/AACtTnDB1oKgSnFoD_E6zREAa?dl=0>.
> I'll keep looking for this, but if anyone has any suggestions, I'd like to hear them. Let me know if you want more information.
I obviously haven’t encountered that problem, and ISTM our environments for this purpose should be pretty much identical, at least when you’re using the Xcode compiler. The one possibility that comes to mind is optimization: I’m building with -O0 so that I can easily use the debugger.
You can cd to src/libqof/qof and make check; you should get the same crash on test-gnc-timezone if you have google test or on test-qof if you don’t. That will provide a convenient program to run the debugger on to see if you can get some more info.
The stack trace looks like the problem is coming from trying to reuse a supposedly freed block, so the real bug is probably somewhere else. Try setting $MallocScribble and see if it will crash where the real bug is.
More information about the gnucash-devel