Gnucash Segfaults

Geert Janssens janssens-geert at telenet.be
Fri Feb 28 08:20:26 EST 2014


On Friday 28 February 2014 05:06:49 Ted Creedon wrote:
>  echo $XDG_DATA_DIRS
> 
> /usr/share:/usr/share
> 
> 
> no prefixes
> 
No prefix means the default prefix. That is usually /usr/local
So the gsettings files will be stored in /usr/local/share/glib-2.0/schemas

Since /usr/local/share is not in you XDG_DATA_DIRS variable they are not found. Which results in 
the abort.

You can fix this by adding /usr/local/share to XDG_DATA_DIRS.

I wonder however why this variable is set at all on your system. It is not set by default on Fedora 
for example. The FreeDesktop specification states that if this variable is not set the default 
should be assumed: /usr/local/share:/usr/share.

You may want to ask this on the Suse forums.

Geert
> 
> On Fri, Feb 28, 2014 at 4:43 AM, Geert Janssens
> 
> <janssens-geert at telenet.be>wrote:
> >  Ah, it looks like gnucash (or better GIO) is not finding the
> >  gsettings> 
> > schemas. GIO aborts in that case.
> > 
> > 
> > 
> > I have seen this happen before when environment variable
> > XDG_DATA_DIRS is not set correctly for your specific set up.
> > 
> > 
> > 
> > Is XDG_DATA_DIRS set on your system ?
> > 
> > 
> > 
> > What is your installation prefix ?
> > 
> > 
> > 
> > Geert
> > 
> > On Friday 28 February 2014 04:15:53 Ted Creedon wrote:
> > > Yes, removed the cp - it was there all the time
> > > 
> > > Yes make install
> > > 
> > > 
> > > 
> > > strace gnucash:
> > > 
> > > <cut>
> > > 
> > > open("/etc/localtime", O_RDONLY) = 6
> > > 
> > > fstat(6, {st_mode=S_IFREG|0644, st_size=2819, ...}) = 0
> > > 
> > > mmap(NULL, 2819, PROT_READ, MAP_PRIVATE, 6, 0) = 0x7f7dcbf70000
> > > 
> > > close(6) = 0
> > > 
> > > munmap(0x7f7dcbf70000, 2819) = 0
> > > 
> > > write(3, "* 04:01:07 OTHER <GLib-GIO> Sett"..., 83) = 83
> > > 
> > > --- SIGTRAP {si_signo=SIGTRAP, si_code=SI_KERNEL} ---
> > > 
> > > +++ killed by SIGTRAP +++
> > > 
> > > 
> > > 
> > > 
> > > 
> > > gdb Stack trace:
> > > 
> > > Program received signal SIGTRAP, Trace/breakpoint trap.
> > > 
> > > 0x00007ffff3b3d309 in g_logv () from /usr/lib64/libglib-2.0.so.0
> > > 
> > > (gdb) bt full
> > > 
> > > #0 0x00007ffff3b3d309 in g_logv () from
> > > /usr/lib64/libglib-2.0.so.0
> > > 
> > > No symbol table info available.
> > > 
> > > #1 0x00007ffff3b3d452 in g_log () from /usr/lib64/libglib-2.0.so.0
> > > 
> > > No symbol table info available.
> > > 
> > > #2 0x00007ffff454f5b7 in ?? () from /usr/lib64/libgio-2.0.so.0
> > > 
> > > No symbol table info available.
> > > 
> > > #3 0x00007ffff3e046a9 in ?? () from /usr/lib64/libgobject-2.0.so.0
> > > 
> > > No symbol table info available.
> > > 
> > > #4 0x00007ffff3e06424 in g_object_new_valist () from
> > > 
> > > /usr/lib64/libgobject-2.0.so.0
> > > 
> > > No symbol table info available.
> > > 
> > > #5 0x00007ffff3e06804 in g_object_new () from
> > > 
> > > /usr/lib64/libgobject-2.0.so.0
> > > 
> > > No symbol table info available.
> > > 
> > > #6 0x00007ffff71bf9d8 in gnc_gsettings_get_schema_ptr
> > > 
> > > (schema_str=schema_str at entry=0x7ffff71d06f7 "general") at
> > > 
> > > gnc-gsettings.c:104
> > > 
> > > gset = 0x0
> > > 
> > > full_name = 0x76c4e0 "org.gnucash.general"
> > > 
> > > __FUNCTION__ = "gnc_gsettings_get_schema_ptr"
> > > 
> > > #7 0x00007ffff71c03ef in gnc_gsettings_get_float
> > > 
> > > (schema=0x7ffff71d06f7 "general", key=0x7ffff71d10da
> > > "retain-days")
> > > 
> > > at gnc-gsettings.c:354


More information about the gnucash-devel mailing list