 |
C++Talk.NET C++ language newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
programmer_pete@yahoo.com Guest
|
Posted: Tue Jan 25, 2005 8:25 pm Post subject: spirit 1.6.0 stlport 4.6.2 msvc6 |
|
|
I am trying to switch to STLPort 4.6.2 from the MSVC STL.
My project uses Spirit 1.6.0 and MSVC++ 6.
I have configured STLPort as follows:
#define _STLP_NO_OWN_IOSTREAMS 1
#define _STLP_USE_OWN_NAMESPACE 1
#define _STLP_REDEFINE_STD 1
In other words, STLPort is configured to used MSVC's iostreams.
I am running into a problem with BOOST_SPIRIT_CHAR_TRAITS_NAMESPACE
I get the error:
c:boostboostspiritcoreprimitivesimplprimitives.ipp(127) : error
C2059: syntax error : '<'
---- excerpt from primitives.ipp lines 125-132 ----
template
inline typename
-> BOOST_SPIRIT_CHAR_TRAITS_NAMESPACE::char_traits<CharT>::int_type
to_int_type(CharT c)
{
return BOOST_SPIRIT_CHAR_TRAITS_NAMESPACE
::char_traits<CharT>::to_int_type(c);
}
---- end excerpt ----
Does anyone have any advice on how to fix this?
By the way, I tried adding warning 4103 to the disabled errors in
_msvc_warnings_off.h (STLPort), but I still get a bunch of them. They
do go away if I wack pragma warning( pop ) from epilog.h, but that
defeats the purpose....
Thanks, "Pete"
|
|
| Back to top |
|
 |
programmer_pete@yahoo.com Guest
|
Posted: Wed Jan 26, 2005 10:37 pm Post subject: Re: spirit 1.6.0 stlport 4.6.2 msvc6 |
|
|
I have changed my approach. I now have
#define _STLP_NO_OWN_NAMESPACE
and do not define the things I did before. This configures STLPort to
use its own iostreams and put them in the std:: namespace. I think that
Spirit will build this way.
This means I need to build the STLPort library. I tried making an MSVC
project and building in the environment, and that didn't work. The
first error is 'char_traits' : undeclared identifier. I tried using the
command line makefiles, but I don't have any experience with those. The
first error I get is
...\stlportstl/_hashtable.h(110) : error C2146: syntax error : missing
';' before identifier 'iterator_category'
...\stlportstl/_hashtable.h(137) : see reference to class template
instantiation
'_STLP_STD::_Ht_iterator<_Val,_Traits,_Key,_HF,_ExK,_EqK,_All>' being
compiled.
I know these are really "handholding" questions, but can anyone explain
how to build and use this thing? I find the installation instructions
quite vague.
Thanks, "Pete"
|
|
| Back to top |
|
 |
programmer_pete@yahoo.com Guest
|
Posted: Thu Jan 27, 2005 5:23 pm Post subject: Re: spirit 1.6.0 stlport 4.6.2 msvc6 |
|
|
Finally, I can build the library. The configuration is to define
#define _STLP_USE_OWN_NAMESPACE 1
#define _STLP_REDEFINE_STD 1
and (of course) do not define _STLP_NO_OWN_IOSTREAMS.
I can also build and run my application.
Thank you all for your indulgence,
"Pete"
P.S. One additional gotcha: make sure that you do not define /J.
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|