Missing glib/gobject when compiling
Edward Bridges
ebridges at eqbridges.com
Mon Nov 6 21:27:33 EST 2017
On Mon, Nov 6, 2017, at 08:40 PM, Edward Bridges wrote:
>
> On Sun, Nov 5, 2017, at 10:39 PM, John Ralls wrote:
> >
> >
> > > On Nov 5, 2017, at 6:07 PM, Edward Bridges <ebridges at eqbridges.com> wrote:
> > >
> > > I've built libdbdpgsql.so using jhbuild build libdbi-drivers, then run:
> > >
> > > cp gnucash-stable/lib/dbd/libdbdpgsql.so \
> > > /Applications/Gnucash.app/Contents/Resources/lib/dbd
> > >
> > >
> > > install_name_tool -change gnucash-stable/lib/libdbi.1.dylib \
> > > /Applications/Gnucash.app/Contents/Resources/lib/libdbi.1.dylib \
> > > /Applications/Gnucash.app/Contents/Resources/lib/dbd/libdbdpgsql.so
> > >
> > > I'm assuming that, then, when I start up Gnucash (v2.6.15) I would have
> > > the
> > > option to "Save As..." to a Postgresql database option under "Data
> > > Format"
> > > but it's not appearing, and am not seeing any logs under Console.
> > >
> > > Thanks for your quick response earlier. Am I missing a step somewhere
> > > here?
> >
> > I think you also need the pgsql client dylib in the bundle and it would
> > be better to use @executable_path/../Resources/lib/libdbi.1.dylib rather
> > than /Applications/Gnucash.app/Contents as that will allow you to move
> > the bundle.
> >
> > Use `otool -L
> > /Applications/Gnucash.app/Contents/Resources/lib/dbd/libdbdpgsql.so` to
> > make sure that your install_name_tool invocation did what you want. I’m
> > suspicious of the relative path in your install_name_tool invocation.
> >
> > Console doesn’t catch stderr anymore and hasn’t since Lion (10.7). You
> > can check the trace file (`sudo find /var/private/Temp -name
> > gnucash.trace` to get the path) but link errors might not get into there
> > either, so best to run GnuCash from a Terminal session:
> > /Applications/Gnucash.app/Contents/MacOS/Gnucash
> > so the stderr output goes where you can see it.
> >
> > Regards,
> > John Ralls
>
> Hi John --
>
> Thanks for your help on this.
>
> When I run according to your instructions I get a brief error message
> that libdbi is unable to load the driver -- and it still is not working
> (see below). I could not find a gnucash.trace file under /var as well.
>
> ```
> ~ $ /Applications/Gnucash.app/Contents/MacOS/Gnucash
> Application Path /Applications/Gnucash.app/Contents/MacOS/Gnucash-bin
>
> (process:4934): gnc.gui-WARNING **: [mac_set_languages()] Language list:
> en:en_US:C
> (null)
> libdbi: Failed to load driver:
> /Applications/Gnucash.app/Contents/Resources/lib/dbd/libdbdpgsql.so
> ^C
>
> ~ $ otool -L
> /Applications/Gnucash.app/Contents/Resources/lib/dbd/libdbdpgsql.so
> /Applications/Gnucash.app/Contents/Resources/lib/dbd/libdbdpgsql.so:
> /Users/gnucash/gnucash-stable/lib/libpq.5.dylib (compatibility
> version 5.0.0, current version 5.9.0)
> /Users/gnucash/gnucash-stable/lib/libdbi.1.dylib (compatibility
> version 3.0.0, current version 3.0.0)
> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
> version 1252.0.0)
> ```
>
> Cheers,
> Ed
Just noticed that `otool` is reporting that `libdbdpgsql.so` under
/Applications/Guncash.app is depending on `libdbi` and `libpq`
that live under the `gnucash` user home directory (i.e. that were built
along with libdbdpgsql.
That may explain the failure to load the shared library (as the user I
ran
Gnucash as does not have access to the gnucash user home directory).
However, I tried running it as root as well, and still get the same
error
message.
Cheers,
Ed
More information about the gnucash-devel
mailing list