libdbi-0.9.0 vs. libdbi-0.8.4 on Ubuntu 14.04 Issue

Geert Janssens janssens-geert at
Fri May 2 04:21:35 EDT 2014

On Friday 02 May 2014 08:53:13 Colin Law wrote:
> On 2 May 2014 07:49, Herbert Mühlburger <mail at> wrote:
> > Hi,
> > 
> > Am 2014-05-01 22:46, schrieb Colin Law:
> > 
> > [...]
> > 
> >>>> apt-cache policy libdbd-mysql
> > 
> > [...]
> > 
> >> That looks ok, though I meant libdbd-sqlite3 since I see that is
> >> what you are using, I presume that shows the same thing.  I am
> >> using 32 bit. Have you checked with the 2.6.3 tag that it also
> >> fails?  I have a 64 bit machine but I am not sure I have not tried
> >> it with sqlite.  I will give it a go.
> It appears to be an issue with HEAD.  I built that (on 64 bit, but
> don't know whether that is significant) and got segmentation error on
> startup.  Reverted to tag 2.6.3 and it is ok.
It would be interesting to test with brancht 'maint' as well. The changes for libdbi 0.9.0 have 
been committed after 2.6.3 has been released.

Also I'm confused here: are both versions (HEAD and 2.6.3) linking against libdbi 0.9 ? If so 
does the 2.6.3 build generate deprecation warnings for some libdbi functions ?

> I had some problems
> getting it to build after the checkout of 2.6.3, though.  I assumed
> that
> sudo make uninstall
> make clean
> git checkout 2.6.3
> ./configure...
> make
> sudo make install
> would do it, but it failed on the make.  Rather than messing about
> trying to analyse it  I removed the src directory, repeated the
> checkout and started again with ./
> Also oddly I found I needed --disable-error-on-warning to get it to
> compile on 2.6.3 which is a bit odd
Which warnings got turned into errors ? They may be relevant.

> So if anyone can tell me the proper technique to checkout a different
> version and rebuild I would be grateful
John's recent c++ related commits have caused sufficient difference between the stable branch 
(maint and by extension also tag 2.6.3) and HEAD that you need to start from a completely 
clean build directory AND have to rerun in between. So the steps would become:

sudo make uninstall (to remove your installed version of gnucash)
make maintainer-clean (wipes everything that was generated)

git checkout 2.6.3 (or git checkout maint)

./configure ...
sudo make install

Because I switch a lot between maint and master, I have chosen to clone the gnucash 
repository twice. One close is permanently checked out to maint the other to master.

And in addition I'm building in separate build directories instead of in the source directories. 
That makes it easier to start from scratch (just delete the build directory). This is pretty easy to 
create your build directory (wherever you like)
cd <build-directory>
<path-to-gnucash-configure>/configure ...


More information about the gnucash-devel mailing list