Hello,
I had a very similar problem. I tried to build date_time of Boost 1.32.0 without
native-wchar_t support of the Microsoft Visual C++ 7.1 Compiler. Here is the bjam
command line:
bjam -sTOOLS=vc-7_1 "-sBUILD=debug off" --with-date_time
The build results show the following error:
D:\Projects\3rdParty\Boost\Boost_1_32_0\Temp\boost_1_32_0\boost\lexical_cast.hpp(150) : error C2679: binary '>>' : no operator found which takes a right-hand operand of type
'boost::date_time::date_names_put::string_type' (or there is no acceptable conversion)
with
[
Config=boost::gregorian::greg_facet_config,
charT=wchar_t,
OutputIterator=std::ostreambuf_iterator>
]
D:\Projects\3rdParty\Boost\Boost_1_32_0\Temp\boost_1_32_0\boost\lexical_cast.hpp(189) : see reference to function template instantiation 'bool
boost::detail::lexical_stream::operator >><Target>(InputStreamable &)' being compiled
with
[
Target=boost::date_time::date_names_put>>::string_type,
Source=const char *,
InputStreamable=boost::date_time::date_names_put>>::string_type
]
D:\Projects\3rdParty\Boost\Boost_1_32_0\Temp\boost_1_32_0\boost\date_time\date_names_put.hpp(126) : see reference to function template instantiation 'Target
boost::lexical_cast::string_type,const char*>(Source)' being compiled
with
[
Target=boost::date_time::date_names_put>>::string_type,
Config=boost::gregorian::greg_facet_config,
charT=wchar_t,
OutputIterator=std::ostreambuf_iterator>,
Source=const char *
]
D:\Projects\3rdParty\Boost\Boost_1_32_0\Temp\boost_1_32_0\boost\date_time\date_names_put.hpp(122) : while compiling class-template member function 'void
boost::date_time::date_names_put::do_put_special_value(boost::date_time::date_names_put::iter_type
&,boost::date_time::date_names_put::special_value_enum) const'
with
[
Config=boost::gregorian::greg_facet_config,
charT=wchar_t,
OutputIterator=std::ostreambuf_iterator>
]
D:\Projects\3rdParty\Boost\Boost_1_32_0\Temp\boost_1_32_0\boost\date_time\date_names_put.hpp(208) : see reference to class template instantiation
'boost::date_time::date_names_put' being compiled
with
[
Config=boost::gregorian::greg_facet_config,
charT=wchar_t,
OutputIterator=std::ostreambuf_iterator>
]
D:\Projects\3rdParty\Boost\Boost_1_32_0\Temp\boost_1_32_0\libs\date_time\build\../src\gregorian\greg_month.cpp(129) : see reference to class template instantiation
'boost::date_time::all_date_names_put' being compiled
with
[
Config=boost::gregorian::greg_facet_config,
charT=wchar_t
]
The build with enabled native wchar_t support succeeds. I have compared the two Toolset files
vc-7_1-tools.jam and vc-7_1-stlport-tools.jam. Although I'm not very familiar with jam
files, I think that the native wchar_t support of the Visual C++ compiler is disabled
per default in the vc-7_1-stlport Toolset.
vc-7_1-tools.jam: ...
feature native-wchar_t : on off ;
...
vc-7_1-stlport-tools.jam: ...
feature native-wchar_t : off on ;
...
If I set the BOOST_NO_STD_WSTRING macro - like Jeff suggest - the build without native
wchar_t support succeeds.
Regards,
Jochen.