Boost logo

Boost Users :

From: Wu Yinghui, Freddie (yhwu_at_[hidden])
Date: 2007-02-09 01:18:34


> 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<wchar_t>::do_in(int &,char const *,char const *,char const *
>> &,wchar_t *,wc
>> har_t *,wchar_t * &)const "
>> (?do_in@?$codecvt_null@_W_at_archive@boost@@EBE?AW4resu
>> lt_at_codecvt_base_at_stlp_std@@AAHPBD1AAPBDPA_W3AAPA_W_at_Z)
>> basic_text_woprimitive.obj : error LNK2001: unresolved external symbol
>> "private:
>> virtual enum stlp_std::codecvt_base::result __thiscall
>> boost::archive::codecvt_
>> null<wchar_t>::do_in(int &,char const *,char const *,char const *
>> &,wchar_t *,wc
>> har_t *,wchar_t * &)const "
>> (?do_in@?$codecvt_null@_W_at_archive@boost@@EBE?AW4resu
>> lt_at_codecvt_base_at_stlp_std@@AAHPBD1AAPBDPA_W3AAPA_W_at_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_at_archive@boost@@EBE?AW4result_at_cod
>> ecvt_base_at_stlp_std@@AAHPBD1AAPBDPA_W3AAPA_W_at_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_at_archive@boost@@EBE?AW4result_at_cod
>> ecvt_base_at_stlp_std@@AAHPBD1AAPBDPA_W3AAPA_W_at_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_at_[hidden]
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.




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