
Marc Wäckerlin wrote:
Robert Ramey wrote:
BOOST_EXPORT must a) be invoked outside of any namespace b) not have characters like < >, :: etc in it c) refer to a complete type
That's not even the problem. I extended my example from the last thread by a simple class A - no template, no namespace - and it reproduces the problem.
Please have a look at the attachment.
Other question: My main problem is, that derived classes are not stored through (smart-) pointer to base.
Then BOOST_CLASS_EXPORT should not be necessary. It is only used to assign an external name to a type.
Will this problem be resolved when I'll be able to export, or what's the problem there and what's "BOOST_CLASS_EXPORT" for? Is it only for assigning a name? Then, do I really need it (because my serialiser does neither care about, nor stores meta information)?
I do not see how a serializer which does not store meta information can work. I suggest separating issues relating to serialization of classes from those related to creation of custom archives. a) test serialization of your classes one of the archives delivered with the system b) test your custom archive with some of the class serializations delivered with the system. It looks like your example fails to link. Note that the archives included with the system used explicit instantiation to generated templated code not otherwise explicitly referred to. Robert Ramey