
Hello, I'm attempting to build Boost.Regex v1.46.1 with the following user.hpp settings: #define BOOST_REGEX_USE_CPP_LOCALE #define BOOST_REGEX_NO_W32 However, this is failing with the following commands (from the root Boost directory) on WinXP using Visual Studio 2010 SP1: bjam --clean link=shared regex bjam link=shared regex compile-c-c++ bin.v2\libs\regex\build\msvc-10.0\debug\threading-multi\usinstances.obj usinstances.cpp c:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\map(38) : warning C4273: 'id' : inconsistent dll linkage c:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\xlocmes(58) : see previous definition of 'public: static std::locale::id std::messages<unsigned short>::id' c:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\xlocmes(58) : while compiling class template static data member 'std::locale::id std::messages<_Elem>::id' with [ _Elem=unsigned short ] C:\eng\natools\boost\1_46_1\boost/regex/v4/cpp_regex_traits.hpp(216) : see reference to function template instantiation 'bool std::has_facet<std::messages<_Elem>>(const std::locale &) throw()' being compiled with [ _Elem=unsigned short ] C:\eng\natools\boost\1_46_1\boost/regex/v4/cpp_regex_traits.hpp(211) : while compiling class template member function 'std::locale boost::re_detail::cpp_regex_traits_base<charT>::imbue(const std::locale &)' with [ charT=unsigned short ] C:\eng\natools\boost\1_46_1\boost/regex/v4/cpp_regex_traits.hpp(973) : see reference to function template instantiation 'boost::shared_ptr<T> boost::re_detail::create_cpp_regex_traits<charT>(const std::locale &)' being compiled with [ T=const boost::re_detail::cpp_regex_traits_implementation<unsigned short>, charT=unsigned short ] C:\eng\natools\boost\1_46_1\boost/regex/v4/cpp_regex_traits.hpp(971) : while compiling class template member function 'boost::cpp_regex_traits<charT>::locale_type boost::cpp_regex_traits<charT>::imbue(boost::cpp_regex_traits<charT>::locale_type)' with [ charT=unsigned short ] C:\eng\natools\boost\1_46_1\boost/regex/v4/regex_traits.hpp(74) : see reference to class template instantiation 'boost::cpp_regex_traits<charT>' being compiled with [ charT=unsigned short ] C:\eng\natools\boost\1_46_1\boost/regex/v4/basic_regex.hpp(312) : see reference to class template instantiation 'boost::regex_traits<charT>' being compiled with [ charT=unsigned short ] C:\eng\natools\boost\1_46_1\boost/regex/v4/instances.hpp(90) : see reference to class template instantiation 'boost::basic_regex<charT,traits>' being compiled with [ charT=unsigned short, traits=boost::regex_traits<unsigned short> ] c:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\map(38) : error C2491:'std::messages<_Elem>::id' : definition of dllimport static data member not allowed with [ _Elem=unsigned short ] c:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\map(38) : warning C4273: 'id' : inconsistent dll linkage c:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\locale(48) : see previous definition of 'public: static std::locale::id std::collate<unsigned short>::id' c:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\locale(48) : while compiling class template static data member 'std::locale::id std::collate<_Elem>::id' with [ _Elem=unsigned short ] C:\eng\natools\boost\1_46_1\boost/regex/v4/cpp_regex_traits.hpp(218) : see reference to function template instantiation 'const _Facet &std::use_facet<std::collate<_Elem>>(const std::locale &)' being compiled with [ _Facet=std::collate<unsigned short>, _Elem=unsigned short ] c:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\map(38) : error C2491:'std::collate<_Elem>::id' : definition of dllimport static data member not allowed with [ _Elem=unsigned short ] call "c:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86 >nul cl /Zm800 -nologo @"bin.v2\libs\regex\build\msvc-10.0\debug\threading-multi\usinstances.obj.rsp" ...failed compile-c-c++ bin.v2\libs\regex\build\msvc-10.0\debug\threading-multi\usinstances.obj... ...skipped <pbin.v2\libs\regex\build\msvc-10.0\debug\threading-multi>boost_regex-vc100-mt-gd-1_46_1.dll for lack of <pbin.v2\libs\regex\build\msvc-10.0\debug\threading-multi>usinstances.obj... ...skipped <pbin.v2\libs\regex\build\msvc-10.0\debug\threading-multi>boost_regex -vc100-mt-gd-1_46_1.lib for lack of <pbin.v2\libs\regex\build\msvc-10.0\debug\threading-multi>usinstances.obj... ...skipped <pbin.v2\libs\regex\build\msvc-10.0\debug\threading-multi>boost_regex-vc100-mt-gd-1_46_1.pdb for lack of <pbin.v2\libs\regex\build\msvc-10.0\debug\threading-multi>usinstances.obj... ...failed updating 1 target... ...skipped 3 targets... ...updated 16 targets... Any ideas? BTW, ICU is properly identified as not being available. Also, all the previous modules are compiled successfully. Thanks, -David