Newbie questions - regex namespace issue
I just downloaded and built boost 1.33 for VC-8_0 and STLPORT 5.0. (which
required adding a jam file for vc-8_0) the build seems to have gone fine,
and a lot of things work, but I get the following link error which seems to
indicate that at least part of boost builds for a client application with
the wrong namespace on stlpd_std::allocator<signature>. The library
actually has exports for std::allocator<signature>
I realize that it could easily be operator error <mine>, but I don't have
the tools handy to backtrack through miles of templates and #define
configuration variables to grok the underlying cause yet.
Any pointers would be appreciated.
============================================================================
==========
FileUtils.obj : error LNK2019: unresolved external symbol "public: bool
__thiscall boost::re_detail::perl_matcher
::match(void)" (?match@?$perl_matcher@PBDV?$allocator@U?$sub_match@PBD@boost@@@stlpd_std@@U ?$regex_traits@DV?$w32_regex_traits@D@boost@@@boost@@@re_detail@boost@@QAE_N XZ) referenced in function "bool __cdecl boost::regex_match
,char,struct boost::regex_traits (char const *,char const *,class boost::match_results > > &,class boost::basic_regex > const &,enum boost::regex_constants::_match_flags)" (??$regex_match@PBDV?$allocator@U?$sub_match@PBD@boost@@@stlpd_std@@DU?$rege x_traits@DV?$w32_regex_traits@D@boost@@@boost@@@boost@@YA_NPBD0AAV?$match_re sults@PBDV?$allocator@U?$sub_match@PBD@boost@@@stlpd_std@@@0@ABV?$basic_rege x@DU?$regex_traits@DV?$w32_regex_traits@D@boost@@@boost@@@0@W4_match_flags@r egex_constants@0@@Z) FileUtils.obj : error LNK2019: unresolved external symbol "public: __thiscall boost::re_detail::perl_matcher >,struct boost::regex_traits ::perl_matcher >,struct boost::regex_traits >(char const *,char const *,class boost::match_results > > &,class boost::basic_regex > const &,enum boost::regex_constants::_match_flags)" (??0?$perl_matcher@PBDV?$allocator@U?$sub_match@PBD@boost@@@stlpd_std@@U?$re gex_traits@DV?$w32_regex_traits@D@boost@@@boost@@@re_detail@boost@@QAE@PBD0A AV?$match_results@PBDV?$allocator@U?$sub_match@PBD@boost@@@stlpd_std@@@2@ABV ?$basic_regex@DU?$regex_traits@DV?$w32_regex_traits@D@boost@@@boost@@@2@W4_m atch_flags@regex_constants@2@@Z) referenced in function "bool __cdecl boost::regex_match >,char,struct boost::regex_traits >(char const *,char const *,class boost::match_results > > &,class boost::basic_regex > const &,enum boost::regex_constants::_match_flags)" (??$regex_match@PBDV?$allocator@U?$sub_match@PBD@boost@@@stlpd_std@@DU?$rege x_traits@DV?$w32_regex_traits@D@boost@@@boost@@@boost@@YA_NPBD0AAV?$match_re sults@PBDV?$allocator@U?$sub_match@PBD@boost@@@stlpd_std@@@0@ABV?$basic_rege x@DU?$regex_traits@DV?$w32_regex_traits@D@boost@@@boost@@@0@W4_match_flags@r egex_constants@0@@Z) QBUtilities.DLL : fatal error LNK1120: 2 unresolved externals
I just downloaded and built boost 1.33 for VC-8_0 and STLPORT 5.0. (which required adding a jam file for vc-8_0) the build seems to have gone fine, and a lot of things work, but I get the following link error which seems to indicate that at least part of boost builds for a client application with the wrong namespace on stlpd_std::allocator<signature>. The library actually has exports for std::allocator<signature>
If the library has symbols with std:: in them, then it was *not* built against STLport. Double check all your bjam build options (do we have a toolset for VC8 and STLport anyway?), and if all else fails, I suggest you treat the regex lib as "just a bunch of sources" and build from your IDE, taking care to ensure that build options are the same as for your application. John.
participants (2)
-
Charlton, Paul
-
John Maddock