Re: [Boost-users] [Serialization] error C2027: use of undefined type 'boost::serialization::extended_type_info_null<T>'?

Ok, I got past the errors I was having last night. Seemed to have to do
with the ordering of the libraries and then an incorrect constant used
in the load method.
Moving on, I now get the following linker errors:
Linking...
Creating library Debug/SerializationDemo.lib and object
Debug/SerializationDemo.exp
demo.obj : error LNK2019: unresolved external symbol "public: __thiscall
boost::archive::basic_text_oprimitive
::~basic_text_oprimitive
>(void)" (??1?$basic_text_oprimitive@V?$basic_ostream@GU?$char_traits@G@std@@@std @@@archive@boost@@QAE@XZ) referenced in function "public: __thiscall boost::archive::text_woarchive_impl<class boost::archive::text_woarchive>::~text_woarchive_impl<class boost::archive::text_woarchive>(void)" (??1?$text_woarchive_impl@Vtext_woarchive@archive@boost@@@archive@boost@ @QAE@XZ)
demo.obj : error LNK2019: unresolved external symbol "public: __thiscall
boost::archive::text_wiarchive_impl<class
boost::archive::text_wiarchive>::text_wiarchive_impl<class
boost::archive::text_wiarchive>(class std::basic_istream
::~basic_text_iprimitive
>(void)" (??1?$basic_text_iprimitive@V?$basic_istream@GU?$char_traits@G@std@@@std @@@archive@boost@@QAE@XZ) referenced in function "public: __thiscall boost::archive::text_wiarchive_impl<class boost::archive::text_wiarchive>::~text_wiarchive_impl<class boost::archive::text_wiarchive>(void)" (??1?$text_wiarchive_impl@Vtext_wiarchive@archive@boost@@@archive@boost@ @QAE@XZ)
demo.obj : error LNK2019: unresolved external symbol "public: __thiscall
boost::archive::basic_text_oprimitive
::basic_text_oprimitive
>(class std::basic_ostream &,bool)" (??0?$basic_text_oprimitive@V?$basic_ostream@GU?$char_traits@G@std@@@std @@@archive@boost@@QAE@AAV?$basic_ostream@GU?$char_traits@G@std@@@std@@_N @Z) referenced in function "public: __thiscall boost::archive::text_woarchive_impl<class boost::archive::text_woarchive>::text_woarchive_impl<class boost::archive::text_woarchive>(class std::basic_ostream &,unsigned int)" (??0?$text_woarchive_impl@Vtext_woarchive@archive@boost@@@archive@boost@ @QAE@AAV?$basic_ostream@GU?$char_traits@G@std@@@std@@I@Z)
Debug/SerializationDemo.exe : fatal error LNK1120: 4 unresolved externals However, if I change the build type to not be unicode, then it all compiles, links, and works. I checked to see what libraries are being linked in a non- unicode build vs. a unicode: Non-Unicode: Linking to lib file: libboost_serialization-vc71-sgd-1_33_1.lib // Good Linking to lib file: libboost_serialization-vc71-sgd-1_33_1.lib // Good Unicode: Linking to lib file: libboost_wserialization-vc71-sgd-1_33_1.lib // Good Linking to lib file: libboost_serialization-vc71-sgd-1_33_1.lib // Why?? Linking to lib file: libboost_serialization-vc71-sgd-1_33_1.lib // Why?? Any ideas? Does the boost serialization possibly have unicode issues in 1.33.1? Thanks in advance, Lawrence

Note that the library is in two parts. libboost_serialization.. contains code used for all types of archives while libboost_wserialization contains code used only for wide character archives. So applications using wide character archives should link against BOTH libraries. Robert Ramey
participants (2)
-
Lawrence Spector
-
Robert Ramey