[Box Backup] can't compile 0.10 on older machines
Martin Ebourne
boxbackup@fluffy.co.uk
Wed, 08 Mar 2006 08:48:26 +0000
On Tue, 2006-03-07 at 19:19 -0600, Alex Howansky wrote:
> I just converted about a dozen machines from 0.09 to 0.10. Three of the
> machines are rather old and will not compile 0.10. I'm assuming that it's a gcc
> version issue -- they're mostly running gcc 2.96. (Which compiled 0.09 just
> fine, FWIW.) Anybody have an idea before I start digging myself into a hole
> here?
Your problems are with the auto_ptr definition. It changed several times
over the course of C++ standardisation and the one you have is not the
same as the final standard version. The usage in box is correct as per
the standard.
As to fixing it, then getting a more compliant (ie. recent version of
gcc) would do it. You might get away with just a more recent version of
libstdc++ instead. Or you could even try and replace just the auto_ptr
definition - it's a template so needs no library to back it up, just the
header file.
Or hack the box sources. You could remove the auto_ptr and replace it
with a normal pointer and a delete in the catch.
Cheers,
Martin.