Boost logo

Boost Users :

From: Christoph Mayer (mayer_at_[hidden])
Date: 2008-07-10 14:12:56


Hi,

I am in the progress of upgrading a project from boost 1.34.0 to 1.35.0.
As far as I can see no changes have been made to the Serialization
library. But I am having trouble with it.

-I build boost using ./configure and using the with-libraries option to
built the serialization library, besides others as a shared library
-I am using g++ 4.2.3 on Ubuntu 8.04

Using BOOST_CLASS_EXPORT_GUID I am making my classes known to the
serialization library. For serialization I am using
boost::archive::polymorphic_binary_oarchive. This all worked with
1.34.0. Now I am getting strange linker errors. I do have
-lboost_serialization on the linker command. When I uncomment all
BOOST_CLASS_EXPORT_GUID commands my compilation works.
Following are the linker errors:

RemoteMessagingSystem.o: In function `~pointer_iserializer':
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/iserializer.hpp:171:
undefined reference to
`boost::archive::detail::archive_pointer_iserializer<boost::archive::polymorphic_binary_iarchive>::~archive_pointer_iserializer()'
RemoteMessagingSystem.o: In function `~pointer_oserializer':
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/oserializer.hpp:162:
undefined reference to
`boost::archive::detail::archive_pointer_oserializer<boost::archive::detail::polymorphic_oarchive_dispatch<boost::archive::binary_oarchive_impl<boost::archive::binary_oarchive,
char, std::char_traits<char> > > >::~archive_pointer_oserializer()'
RemoteMessagingSystem.o: In function `~pointer_iserializer':
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/iserializer.hpp:171:
undefined reference to
`boost::archive::detail::archive_pointer_iserializer<boost::archive::polymorphic_binary_iarchive>::~archive_pointer_iserializer()'
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/iserializer.hpp:171:
undefined reference to
`boost::archive::detail::archive_pointer_iserializer<boost::archive::polymorphic_binary_iarchive>::~archive_pointer_iserializer()'
RemoteMessagingSystem.o: In function `~pointer_oserializer':
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/oserializer.hpp:162:
undefined reference to
`boost::archive::detail::archive_pointer_oserializer<boost::archive::detail::polymorphic_oarchive_dispatch<boost::archive::binary_oarchive_impl<boost::archive::binary_oarchive,
char, std::char_traits<char> > > >::~archive_pointer_oserializer()'
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/oserializer.hpp:162:
undefined reference to
`boost::archive::detail::archive_pointer_oserializer<boost::archive::detail::polymorphic_oarchive_dispatch<boost::archive::binary_oarchive_impl<boost::archive::binary_oarchive,
char, std::char_traits<char> > > >::~archive_pointer_oserializer()'
RemoteMessagingSystem.o: In function `pointer_oserializer':
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/oserializer.hpp:214:
undefined reference to
`boost::archive::detail::archive_pointer_oserializer<boost::archive::detail::polymorphic_oarchive_dispatch<boost::archive::binary_oarchive_impl<boost::archive::binary_oarchive,
char, std::char_traits<char> > >
>::archive_pointer_oserializer(boost::serialization::extended_type_info
const&)'
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/oserializer.hpp:224:
undefined reference to
`boost::archive::detail::archive_pointer_oserializer<boost::archive::detail::polymorphic_oarchive_dispatch<boost::archive::binary_oarchive_impl<boost::archive::binary_oarchive,
char, std::char_traits<char> > > >::~archive_pointer_oserializer()'
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/oserializer.hpp:214:
undefined reference to
`boost::archive::detail::archive_pointer_oserializer<boost::archive::detail::polymorphic_oarchive_dispatch<boost::archive::binary_oarchive_impl<boost::archive::binary_oarchive,
char, std::char_traits<char> > >
>::archive_pointer_oserializer(boost::serialization::extended_type_info
const&)'
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/oserializer.hpp:224:
undefined reference to
`boost::archive::detail::archive_pointer_oserializer<boost::archive::detail::polymorphic_oarchive_dispatch<boost::archive::binary_oarchive_impl<boost::archive::binary_oarchive,
char, std::char_traits<char> > > >::~archive_pointer_oserializer()'
RemoteMessagingSystem.o: In function `pointer_iserializer':
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/iserializer.hpp:314:
undefined reference to
`boost::archive::detail::archive_pointer_iserializer<boost::archive::polymorphic_binary_iarchive>::archive_pointer_iserializer(boost::serialization::extended_type_info
const&)'
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/iserializer.hpp:323:
undefined reference to
`boost::archive::detail::archive_pointer_iserializer<boost::archive::polymorphic_binary_iarchive>::~archive_pointer_iserializer()'
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/iserializer.hpp:314:
undefined reference to
`boost::archive::detail::archive_pointer_iserializer<boost::archive::polymorphic_binary_iarchive>::archive_pointer_iserializer(boost::serialization::extended_type_info
const&)'
/home/mayer/SpoVNet/development/spovnet/lib/boost_1_35_0/build/include/boost-1_35/boost/archive/detail/iserializer.hpp:323:
undefined reference to
`boost::archive::detail::archive_pointer_iserializer<boost::archive::polymorphic_binary_iarchive>::~archive_pointer_iserializer()'
collect2: ld returned 1 exit status

Any help is appreciated as I am slightly going nuts :)

Best regards,
Chris


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net