C++ 11 and Boost

John Ralls jralls at ceridwen.us
Mon Jul 21 05:15:55 EDT 2014

On Jul 21, 2014, at 6:33 AM, Lance Edgar <lance at edbob.org> wrote:

> On 06/15/2014, John Ralls wrote:
>> I’m getting quite close to merging the current C++-build branch into master again, and this brings two significant changes:
>> * A C++-11 capable compiler is required; the test in configure looks for the compiler accepting either -std=c++11 or -std=c++0x.
>> * Boost version 1.50 or greater will be required. There’s nothing magic about that version, it was just the oldest of the ones on the various VMs I’ve got. If someone would rather have an older minimum version, I can change it.
> I'd never tried to compile GnuCash before now, so wasn't sure what to expect.  It all went pretty smooth and the initial blockers were pretty obvious to get past, e.g. installing some development packages I didn't have previously.
> The hardest for me was the Boost requirement, since I had 1.49.0 installed via package manager (using Debian 7.6 "wheezy").  Luckily found the comment above, so I hand-edited my configure script to require 1.49.0 and was back in business.  But that was after having downloaded Boost myself and not having any luck with the BOOST_ROOT environment variable or the --with-boost or --with-boost-libdir configure options.
> So point being, if the minimum really is somewhat arbitrary then I would vote it be lowered to 1.49.0 (at least?).

Done. To 1.48, just for a cushion. It is likely temporary, though, because boost::log was introduced in 1.54, and we'll probably want to use that to replace g_log. Also 1.53 introduced some C++14 concurrency libraries that we might want to use so that we don't have to force C++14-compatible libstdc++/libc++.

John Ralls

More information about the gnucash-devel mailing list