Re: [Boost-users] [Serialization] Linking Error in the Latest CVS

OK - I checked in a small change in Jamfile.v2 of the build directory which I believe my address this.
Robert Ramey
Thanks, Robert, for checking in the update. But I don't think that fixes the problem. (Indeed, rebuilding Boost with the update still gave me exactly the same errors.) The problems, I think, is that codecvt_null.cpp was compiled, and linked to produce boost_serialization_....dll/.lib. But I found that the codecvt_null class's methods are mysteriously missing from the resulting .dll/.lib. So when boost_wserialization_....dll/.lib links with boost_serialization....lib, all codecvt_null-related symbols are not found. I don't understand why, but turning /VERBOSE on for the linker showed that the linker somehow discarded the codecvt_null-related symbols when producing the boost_serialization....dll.
Wu Yinghui, Freddie wrote:
Hi all,
I posted a question regarding usage of BJam V2 in building the latest Boost checked out from the CVS (http://lists.boost.org/boost-users/2007/02/25201.php). But there seems to be no interest in explaining that at all so far.
But I've sort of worked out most of the solution so far (though mostly hacking around in the .jam files, which I suppose could have been done a lot easier by someone more familiar with the building system). Still I failed to build the Boost.Serialization library out-of-box.
My system: Windows XP Pro SP2 Compiler: MSVC 7.1 The errors I met was something like this: =====snip===== Creating library bin.v2\libs\serialization\build\msvc-7.1\release\instruction -set-pentium4\qt3support-on\stdlib-stlport\threading-multi\boost_wserialization- vc71-mt-p-1_35.lib and object bin.v2\libs\serialization\build\msvc-7.1\release\i nstruction-set-pentium4\qt3support-on\stdlib-stlport\threading-multi\boost_wseri alization-vc71-mt-p-1_35.exp basic_text_wiprimitive.obj : error LNK2001: unresolved external symbol "private: virtual enum stlp_std::codecvt_base::result __thiscall boost::archive::codecvt_ null
::do_in(int &,char const *,char const *,char const * &,wchar_t *,wc har_t *,wchar_t * &)const " (?do_in@?$codecvt_null@_W@archive@boost@@EBE?AW4resu lt@codecvt_base@stlp_std@@AAHPBD1AAPBDPA_W3AAPA_W@Z) basic_text_woprimitive.obj : error LNK2001: unresolved external symbol "private: virtual enum stlp_std::codecvt_base::result __thiscall boost::archive::codecvt_ null ::do_in(int &,char const *,char const *,char const * &,wchar_t *,wc har_t *,wchar_t * &)const " (?do_in@?$codecvt_null@_W@archive@boost@@EBE?AW4resu lt@codecvt_base@stlp_std@@AAHPBD1AAPBDPA_W3AAPA_W@Z) binary_wiarchive.obj : error LNK2001: unresolved external symbol "private: virtu al enum stlp_std::codecvt_base::result __thiscall boost::archive::codecvt_null<w char_t>::do_in(int &,char const *,char const *,char const * &,wchar_t *,wchar_t *,wchar_t * &)const " (?do_in@?$codecvt_null@_W@archive@boost@@EBE?AW4result@cod ecvt_base@stlp_std@@AAHPBD1AAPBDPA_W3AAPA_W@Z) binary_woarchive.obj : error LNK2001: unresolved external symbol "private: virtu al enum stlp_std::codecvt_base::result __thiscall boost::archive::codecvt_null<w char_t>::do_in(int &,char const *,char const *,char const * &,wchar_t *,wchar_t *,wchar_t * &)const " (?do_in@?$codecvt_null@_W@archive@boost@@EBE?AW4result@cod ecvt_base@stlp_std@@AAHPBD1AAPBDPA_W3AAPA_W@Z) =====snip===== I tried dumpbin /all bin.v2\libs\serialization\...\boost_serialization-vc71-mt-p-1_35.lib
And indeed, it seems that codecvt_null object's methods were missing from the library. Any hints on how I can fix this problem?
Cheers,
Freddie
-- Wu Yinghui, Freddie Senior Software Engineer Advanced Technology Research and Development Group Volume Interactions Pte Ltd 1 Kim Seng Promenade #12-01 Great World City East Tower Singapore 237994 Tel: +65 62226962 (Ext 216) Fax: +65 62226215 Email: yhwu@volumeinteractions.com URL: http://www.volumeinteractions.com http://www.dextroscope.com Important: This message is intended for the recipient(s) addressed above. It contains privileged and confidential information. If you are not the intended recipient, please notify the sender immediately by replying to this message and then delete it from your system. You must not read, copy, use, or disseminate this communication in any form. Thank you.
participants (1)
-
Wu Yinghui, Freddie