$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Martyn Woerner (martyn.woerner_at_[hidden])
Date: 2005-06-16 12:10:08
Hi Folks,
I'm a newbie gingerly moving over from MFC.  I have built and installed 
regex from the boost_1_32_0 package without any obvious problem.  Now I've 
included the simplest use of regex taken from the overview and:
a) I get a compile error in regbase.hpp.  As a temporary workaround I've 
tried using V3 instead and:
b) I get a link error (debug & release)
Can someone help me overcome this please?  Many thanks.
I have:
#include <boost/cregex.hpp>
//#define BOOST_REGEX_V3
#include <boost/regex.hpp>
using namespace boost;
...
 // regexp test
 const std::string s = "sdflsjhslad";
 static const boost::regex e("(\\d{4}[- ]){3}\\d{4}");
 if (regex_match(s, e))
   ASSERT(true);
 else;
   ASSERT(true);
...
which gives the following:
Compiling...
StdWbApp.cpp
c:\projects\boost_1_32_0\boost\regex\v4\regbase.hpp(120) : error C2955: 
'collate' : use of class template requires template argument list
        c:\program files\microsoft visual studio\vc98\include\locale(67) : 
see declaration of 'collate'
c:\projects\boost_1_32_0\boost\type_traits\detail\wrap.hpp(16) : fatal error 
C1506: unrecoverable block scoping error
and if I use V3 I get the link errors:
StdWbApp.cpp
Linking...
StdWbApp.obj : error LNK2001: unresolved external symbol "protected: void 
__cdecl boost::re_detail::match_results_base<char const *,class 
boost::detail::allocator_adapter<char,class boost::detail::simple_alloc> 
 >::m_free(void)" (?m_free@?$match_resu
lts_base_at_PBDV?$allocator_adapter_at_DVsimple_alloc_at_detail@boost@@@detail_at_boost@@@re_detail_at_boost@@IAAXXZ)
StdWbApp.obj : error LNK2001: unresolved external symbol "public: __thiscall 
boost::re_detail::match_results_base<char const *,class 
boost::detail::allocator_adapter<char,class boost::detail::simple_alloc> 
 >::match_results_base<char const *,class bo
ost::detail::allocator_adapter<char,class boost::detail::simple_alloc> 
 >(class boost::detail::allocator_adapter<char,class 
boost::detail::simple_alloc> const &)" 
(??0?$match_results_base_at_PBDV?$allocator_adapter_at_DVsimple_alloc_at_detail@boost@@@detail_at_b
oost@@@re_detail_at_boost@@QAE_at_ABV?$allocator_adapter_at_DVsimple_alloc_at_detail@boost@@@detail_at_2@@Z)
StdWbApp.obj : error LNK2001: unresolved external symbol "public: void 
__cdecl boost::re_detail::match_results_base<char const *,class 
boost::detail::allocator_adapter<char,class boost::detail::simple_alloc> 
 >::set_size(unsigned int,char const *,cha
r const *)" 
(?set_size@?$match_results_base_at_PBDV?$allocator_adapter_at_DVsimple_alloc_at_detail@boost@@@detail_at_boost@@@re_detail_at_boost@@QAAXIPBD0_at_Z)
... and so on
Debug/StdWb.exe : fatal error LNK1120: 9 unresolved externals