[Box Backup] Could do with some advice on getting Boxbackup compiled ....

Martin Ebourne boxbackup@fluffy.co.uk
Tue, 14 Mar 2006 11:08:55 +0000


dave_d@boltblue.com wrote:
> ...
> So ....  SME server is basically a stripped down RH7.3 system in its =20
>  present release,
> soon to become a stripped down CentOS 4.2 (2.6.x kernel) in the next =20
>  release.
> ...
> #./configure --with-ssl-headers=3D/opt/openssl-0.9.8a/include
> --with-ssl-lib=3D/opt/openssl-0.9.8a/lib  --enable-static-bin
> --prefix=3D/usr/local/bin/boxbackup --enable-gnu-readline

--enable-static-bin is not guaranteed to work, and is only =20
semi-supported at the moment. I recommend you don't use it unless =20
really necessary. If you do then post any bugs you get with it to the =20
-devel list and we'll try to work through them. However, this is not =20
your problem at the moment.

> Daemon.cpp: In method `int Daemon::Main (const char *, int, const char
> **)':
> Daemon.cpp:174: no match for `auto_ptr<Configuration> & =3D
> auto_ptr<Configuration>'
> /usr/include/g++-3/memory:40: candidates are: auto_ptr<_Tp>
> &auto_ptr<_Tp>::operator=3D (auto_ptr<_Tp> &) [with _Tp =3D Configuration]
> /usr/include/g++-3/memory:48:                 auto_ptr<_Tp>
> &auto_ptr<_Tp>::operator=3D (auto_ptr<_Tp1> &) [with _Tp1 =3D
> Configuration, _Tp =3D Configuration]
> ...
> As far as I can make out, auto_ptr is part of the C++ STL.  Not being a C+=
+
> programmer puts me at a bit of a disadvantage here, but I would have =20
>  thought that
> 'auto_ptr' was included as part of the gcc package.

This is due to an old version of GCC. The interface to auto_ptr that =20
was standardised is significantly different to the version that a lot =20
of old compilers had while the C++ standardisation was still in =20
progress.

This error has been discussed before, but no-one has provided a =20
suitable patch to work around it, and I'm not sure how far we want to =20
go supporting old non-standards conforming compilers. The good news is =20
that when you switch to CentOS 4.2 you'll be using a modern compiler =20
and it will just work.

Cheers,

Martin.