Hi I have built the StlPort 5.1.0 shared dlls and boost 1_33_1 Shared dlls successfully. The Platform is MSVC8. I created a sample projeth with just on file with code: #include <boost/regex.hpp> bool testregex( const char* StringToMatch ) { return( boost::regex_match( StringToMatch, boost::regex("[A-Z]+") )); } int main (int argc, char *argv[]) { bool trial = testregex( "hello how r u ?"); return 1; } Compilation succeeds but I get two Linker errors (BOOST_DYN_LINK is defined) Main.obj : error LNK2001: unresolved external symbol "public: bool __thiscall boost::re_detail::perl_matcher<char const *,class stlp_std::allocator<struct boost::sub_match<char const *> >,struct boost::regex_traits<char,class boost::w32_regex_traits<char> >
::match(void)" (?match@?$perl_matcher@PBDV?$allocator@U?$sub_match@PBD@boost@@@stlp_std @@U?$regex_traits@DV?$w32_regex_traits@D@boost@@@boost@@@re_detail@boost @@QAE_NXZ)
::perl_matcher<char const *,class stlp_std::allocator<struct boost::sub_match<char const *> >,struct boost::regex_traits<char,class boost::w32_regex_traits<char> > >(char const *,char const *,class boost::match_results<char const *,class stlp_std::allocator<struct boost::sub_match<char const *> > > &,class boost::basic_regex<char,struct boost::regex_traits<char,class boost::w32_regex_traits<char> > > const &,enum boost::regex_constants::_match_flags,char const *)" (??0?$perl_matcher@PBDV?$allocator@U?$sub_match@PBD@boost@@@stlp_std@@U? $regex_traits@DV?$w32_regex_traits@D@boost@@@boost@@@re_detail@boost@@QA E@PBD0AAV?$match_results@PBDV?$allocator@U?$sub_match@PBD@boost@@@stlp_s
1>Main.obj : error LNK2001: unresolved external symbol "public: __thiscall boost::re_detail::perl_matcher<char const *,class stlp_std::allocator<struct boost::sub_match<char const *> >,struct boost::regex_traits<char,class boost::w32_regex_traits<char> > td@@@2@ABV?$basic_regex@DU?$regex_traits@DV?$w32_regex_traits@D@boost@@@ boost@@@2@W4_match_flags@regex_constants@2@0@Z) So it cannot find the constructor for perl_matcher and the declaration for regex_match. I found a similar post on Boost : http://www.nabble.com/-regex-Using-regex-in-x64-exe-with-VC-8.0-t2088061 .html#a5755051 The suggested solutions on this post are: 1) check for intermixing of x86 and x64 : I am on 32 bit platform.. so intermixing does not apply 2) add regex source code and compile ( using BOOST_REGEX_NO_LIB) : I get the errors for stdext namespace 1>C:\boost_1_33_1\boost/regex/v4/regex_workaround.hpp(145) : error C2653: 'stdext' : is not a class or namespace name 1> C:\boost_1_33_1\boost/regex/v4/regex_format.hpp(562) : see reference to function template instantiation 'OutputIterator boost::re_detail::copy<const charT*,OutputIterator>(InputIterator,InputIterator,OutputIterator)' being compiled 1> with 1> [ 1> OutputIterator=boost::re_detail::string_out_iterator<stlp_std::basic_str ing<wchar_t,stlp_std::char_traits<wchar_t>,stlp_std::allocator<wchar_t>>
,
1> charT=wchar_t, 1> InputIterator=const wchar_t * 1> ] 1> C:\boost_1_33_1\boost/regex/v4/match_results.hpp(160) : see reference to function template instantiation 'OutputIterator boost::re_detail::regex_format_imp<boost::re_detail::string_out_iterator <S>,const wchar_t*,stlp_std::allocator<_Tp>,_CharT,boost::re_detail::trivial_forma t_traits<charT>>(OutputIterator,const boost::match_results<BidiIterator> &,const charT *,const charT *,boost::regex_constants::match_flag_type,const traits &)' being compiled 1> with 1> [ 1> OutputIterator=boost::re_detail::string_out_iterator<stlp_std::basic_str ing<wchar_t,stlp_std::char_traits<wchar_t>,stlp_std::allocator<wchar_t>>
,
1> S=stlp_std::basic_string<wchar_t,stlp_std::char_traits<wchar_t>,stlp_std ::allocator<wchar_t>>, 1> _Tp=boost::sub_match<const wchar_t *>, 1> _CharT=wchar_t, 1> charT=wchar_t, 1> BidiIterator=const wchar_t *, 1> traits=boost::re_detail::trivial_format_traits<wchar_t> 1> ] 1> C:\boost_1_33_1\boost/regex/v4/match_results.hpp(156) : while compiling class template member function 'stlp_std::basic_string<_CharT,_Traits,_Alloc> boost::match_results<BidiIterator>::format(const stlp_std::basic_string<_CharT,_Traits,_Alloc> &,boost::regex_constants::match_flag_type) const' 1> with 1> [ 1> _CharT=wchar_t, 1> _Traits=stlp_std::char_traits<wchar_t>, 1> _Alloc=stlp_std::allocator<wchar_t>, 1> BidiIterator=const wchar_t * 1> ] 1> C:\boost_1_33_1\boost/regex/v4/instances.hpp(86) : see reference to class template instantiation 'boost::match_results<BidiIterator>' being compiled 1> with 1> [ 1> BidiIterator=const wchar_t * 1> ] 1>C:\boost_1_33_1\boost/regex/v4/regex_workaround.hpp(145) : error C3861: 'unchecked_copy': identifier not found Can anyone suggest a solution?? Thanks in advance Manish Mangal Software Engineer atlas(r) search Partner for Results 206-816-8349 // phone Manish.Mangal@AtlasSolutions.com <mailto:t-Matt.Koch@AtlasSolutions.com> // email www.AtlasSolutions.com <outbind://116-000000001368D4B5F8F6D0488191444C76FD7C9507008921F4CB773B0 545AAED425DEF553BC300003A3500100000DB0C51F64BED3447AA6EC585072C4EC300000 1E3B7A70000/jenniferh/Local%20Settings/Temporary%20Internet%20Files/OLK3 /www.AtlasSolutions.com> // web