Johan, thanks for your email. But I think you have made an error to send this email to me. Because the topic of my email is "nmake regex under vc6". Can you help me fix that problem?
 
I have downloaded the lastest version 1.41.0 of Boost, and I want to use the regex library of it in MSVC6.
When I made the library according to the tips on the page: http://www.boost.org/doc/libs/1_41_0/libs/regex/doc/html/index.html
I got the following error messages when I pressed the enter key after entering "nmake -fvc6.mak":
 
Microsoft (R) Program Maintenance Utility   Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
Building Boost.Regex without ICU / Unicode support:
Hint: set ICU_PATH on the nmake command line to point
to your ICU installation if you have one.
        cl  /c /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD     -Y- -
Fo./vc6/libboost_regex-vc6-s-1_40/ -Fdvc6/
libboost_regex-vc6-s-1_40.pdb ../src/c_regex_traits.cpp
Command line warning D4002 : ignoring unknown option '-Y-'
c_regex_traits.cpp
        cl  /c /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD     -Y- -
Fo./vc6/libboost_regex-vc6-s-1_40/ -Fdvc6/
libboost_regex-vc6-s-1_40.pdb ../src/cpp_regex_traits.cpp
Command line warning D4002 : ignoring unknown option '-Y-'
cpp_regex_traits.cpp
..\..\..\boost/regex/v4/cpp_regex_traits.hpp(353) : warning C4275: non dll-interface struct
'boost::re_detail::cpp_regex_traits_base<char>' used as ba
se for dll-interface class 'boost::re_detail::cpp_regex_traits_char_layer<char>'
        ..\..\..\boost/regex/v4/cpp_regex_traits.hpp(352) : see declaration of 'cpp_regex_traits_char_layer<char>'
..\..\..\boost/regex/v4/w32_regex_traits.hpp(253) : warning C4275: non dll-interface struct
'boost::re_detail::w32_regex_traits_base<char>' used as ba
se for dll-interface class 'boost::re_detail::w32_regex_traits_char_layer<char>'
        ..\..\..\boost/regex/v4/w32_regex_traits.hpp(252) : see declaration of 'w32_regex_traits_char_layer<char>'
        cl  /c /nologo /ML /W3 /GX /O2 /GB /GF /Gy /I..\..\..\ /DWIN32 /DNDEBUG /D_MBCS /D_LIB /FD     -Y- -
Fo./vc6/libboost_regex-vc6-s-1_40/ -Fdvc6/
libboost_regex-vc6-s-1_40.pdb ../src/cregex.cpp
Command line warning D4002 : ignoring unknown option '-Y-'
cregex.cpp
..\..\..\boost/regex/v4/cpp_regex_traits.hpp(353) : warning C4275: non dll-interface struct
'boost::re_detail::cpp_regex_traits_base<char>' used as ba
se for dll-interface class 'boost::re_detail::cpp_regex_traits_char_layer<char>'
        ..\..\..\boost/regex/v4/cpp_regex_traits.hpp(352) : see declaration of 'cpp_regex_traits_char_layer<char>'
..\..\..\boost/regex/v4/w32_regex_traits.hpp(253) : warning C4275: non dll-interface struct
'boost::re_detail::w32_regex_traits_base<char>' used as ba
se for dll-interface class 'boost::re_detail::w32_regex_traits_char_layer<char>'
        ..\..\..\boost/regex/v4/w32_regex_traits.hpp(252) : see declaration of 'w32_regex_traits_char_layer<char>'
..\..\..\boost/regex/v4/match_results.hpp(184) : error C2535: 'class std::basic_string<Traits,struct
std::char_traits<Traits>,class std::allocator<Tra
its> > __thiscall boost::match_results<Traits,A>::str(const class std::basic_string<Traits,_E,_Tr> &) const' :
member function already defined or decl
ared
        ..\..\..\boost/regex/v4/match_results.hpp(174) : see declaration of 'str'
        ..\..\..\boost/regex/v4/match_results.hpp(454) : see reference to class template instantiation
'boost::match_results<BidiIterator,Allocator>'
being compiled
..\..\..\boost/regex/v4/match_results.hpp(256) : error C2535: 'const struct boost::sub_match<Traits> &__thiscall
boost::match_results<Traits,A>::opera
tor [](const class std::basic_string<Traits,_E,_Tr> &) const' : member function already defined or declared
        ..\..\..\boost/regex/v4/match_results.hpp(233) : see declaration of '[]'
        ..\..\..\boost/regex/v4/match_results.hpp(454) : see reference to class template instantiation
'boost::match_results<BidiIterator,Allocator>'
being compiled
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.
 
POST:
I have cancelled the comments before
#define BOOST_REGEX_USE_CPP_LOCALE,
#define BOOST_REGEX_HAS_DLL_RUNTIME,
#define BOOST_REGEX_DYN_LINK,
#define BOOST_REGEX_HAS_MS_STACK_GUARD,
and #define BOOST_REGEX_RECURSIVE in boost\regex\user.hpp.
 
Before I cancelled these comments, I have got the same error messages above.
 
2010-01-22

xwf1788

发件人: "Johan Nilsson" <r.johan.nilsson@gmail.com>
发送时间: 2010-01-22 16:56
主 题: Re: [Boost-build] Can I force a property to be propagated?
收件人: boost-build@lists.boost.org


Vladimir Prus wrote: 
> On Thursday 21 January 2010 19:42:33 John Maddock wrote: 
>>> Would it be possible to use some technique similar to this: 
>>> 
>>> --- 
>>> project foobar ; 
>>> 
>>> exe test : main.cpp ; 
>>> 
>>> # NOTE: We need to specify location here in order to avoid 
>>> # the "duplicate targets" problem. 
>>> # 
>>> alias test2 : test/<location>bin2/<define>FOOBAR=2 ; # or 
>>> <xsl-param>something 
>>> 
>>> install bin 
>>>> 
>>> test2 
>>> ; 
>>> --- 
>>> 
>>> I know it's not literally what you're looking for, but you might be 
>>> able to 
>>> adapt it to your needs. 
>> 
>> I tried adding: 
>> 
>> alias date_time_docs : 
>> ../../libs/date_time/xmldoc//date_time/<location>bin2 
>>> 
>>         <format>pdf:<xsl:param>xep.extensions=1 
>>         <format>pdf:<xsl:param>fop.extensions=0 
>>         <format>pdf:<xsl:param>fop1.extensions=0 
>> 
>> ; 
>> 
>> to doc/pdf/Jamfile.v2 but got a whole load of bbv2 errors: 
>> 
>> D:/data/boost/branches/release/tools/build/v2/build\virtual-target.jam:1066: 
>> in virtual-target.register-actual-name from module virtual-target 
>> error: Duplicate name of actual target: <pbin2>date_time.docbook 
>> error: previous virtual target { 
>> boostbook%boostbook.boostbook-to-docbook-date_time.docbook.DOCBOOK { 
>> date_time.xml.XML } } 
>> error: created from ../../libs/date_time/xmldoc/date_time 
>> error: another virtual target { 
>> boostbook%boostbook.boostbook-to-docbook-date_time.docbook.DOCBOOK { 
>> date_time.xml.XML } } 
>> error: created from ../../libs/date_time/xmldoc/date_time 
>> error: added properties: <format>pdf 
> Well, if you force target named 'date_time_docs' to be always 
> generated to directory 'bin2', regardless of properties, then you get 
> clash between 
> pdf and non-pdf builds. 
 
Without checking the actual jamfiles; isn't it possible to request a  
pdf-only build by somthing along the style of e.g. "bjam pdf" or "bjam  
boost-docs format=pdf"? 
 
/ Johan 
 
 
_______________________________________________ 
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build