Boost logo

Boost :

From: Joaquín Mª López Muñoz (joaquin_at_[hidden])
Date: 2005-07-08 02:54:17


Robert Ramey ha escrito:

>
> b) acc - looks pretty good - but all DLL versions fail

I cannot help much here, but I can confirm that as of
June 28, dll tests were working OK on this compiler, and in
fact only 14 tests used to fail:

http://lists.boost.org/boost/2005/06/29357.php

so I guess something has changed later on that breaks this
platform.

>
> g) last time I checked SunOS, DMC and vacpp failed to build the library due
> to failures in code outside the serialization library. Generally I have
> marked these compilers as not usable.
>

Toon Knapen and I have beeing doing some offlist research on
vacpp these days, and came close to being able to use Boost.Serialization,
but finally gave up. I summarize here our findings in case you want to
take on the challenge (now or after 1.33)

* Currently Boost.Serialization builds in vacpp.
* When trying to use it, the linker complains about undefined symbols
like this:

ld: 0711-317 ERROR: Undefined symbol:
boost::serialization::version<boost::serialization::nvp<const unsigned long>
>::value

this seems to be related to a defect in the compiler by which it needs
static const data to be defined outside their class:

http://lists.boost.org/MailArchives/boost/msg30039.php

the problem can be remedied by defining
BOOST_NO_INCLASS_MEMBER_INITIALIZATION, though I'm not sure this
is a safe move (see http://lists.boost.org/boost/2004/07/7289.php).

* We locally defined BOOST_NO_INCLASS_MEMBER_INITIALIZATION
for vacpp 6.0 (this change hasn't been commited to the CVS) and the aforementioned

problems went away, but then other type of undefined symbols appeared:

ld: 0711-317 ERROR: Undefined symbol:
.boost::archive::detail::basic_archive_impl::lookup_helper(const
boost::serialization::extended_type_info*,boost::shared_ptr<void>&)
ld: 0711-317 ERROR: Undefined symbol:
.boost::archive::detail::basic_archive_impl::insert_helper(const
boost::serialization::extended_type_info*,boost::shared_ptr<void>&)
ld: 0711-317 ERROR: Undefined symbol:
.boost::archive::detail::basic_pointer_iserializer::~basic_pointer_iserializer()
ld: 0711-317 ERROR: Undefined symbol:
.boost::archive::detail::basic_pointer_iserializer::basic_pointer_iserializer(const
boost::serialization::extended_type_info&)
ld: 0711-317 ERROR: Undefined symbol:
.boost::archive::detail::basic_pointer_oserializer::~basic_pointer_oserializer()
ld: 0711-317 ERROR: Undefined symbol:
.boost::archive::detail::basic_pointer_oserializer::basic_pointer_oserializer(c

and here I gave up. I hope this info is of some help in case you
decide to work on making Boost.Serialization work for vacpp.

Best,

Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk