From: David Abrahams (david.abrahams_at_[hidden])
Date: 2002-05-01 10:41:14
----- Original Message -----
From: "Tim Hawes" <Tim.Hawes_at_[hidden]>
Sent: Wednesday, May 01, 2002 9:01 AM
Subject: Re: [boost] Boost, stlport, gcc-3.0.4 on Solaris 8
> On Tue, 2002-04-30 at 18:18, David Abrahams wrote:
> > What do you consider "the stable boost distro"?
> > FWIW, I consider the current CVS to be in much better shape than
> I thought 1.27 was considered "stable" or at least more stable than
It's stable in that it's not changing. That doesn't mean it works ;-(
> I had also tried the CVS version but kept getting this error when I
> tried to compile against it:
> #include <boost/regex.hpp>
> #include <iostream>
> int main()
> boost::regex stitle("(.)*<title>(.)*",boost::regbase::icase);
> Find <title></title> tags.
> boost::regex meta("(.)*META name=\"SectionMember\"(.)*"); //
> Find sectionmember meta tag.
> boost::RegEx *re = new boost::RegEx();
> _STL::cout << "Hello World!" << _STL::endl;
You shouldn't be writing "_STL" in your own code, but that's not a boost
problem. STLPort #defines std so you don't have to do that. Actually, I
can think of several ways in which this might be interfering with regex.
> delete re;
> return 0;
> c++ -I/usr/local/gcc/gcc-3.0.4/include/stlport -I/usr/local/boost -c
> In file included from /usr/local/boost/boost/regex.hpp:1541,
> from test.cpp:1:
> /usr/local/boost/boost/regex/detail/instances.hpp:116: template-id
> `compile_map<>' for `void boost::reg_expression<wchar_t,
> boost::regex_traits<wchar_t>, _STL::allocator<wchar_t>
> >::compile_map(boost::re_detail::re_syntax_base*, unsigned int*,
> int*, unsigned int, boost::re_detail::re_syntax_base*) const' does
> not match any template declaration
Can't help you there; regex isn't my department. John?
(looks like a possible missing "template" keyword after "::")
> > Which part of boost do you get this error for? Can you post a single
> > compilation command with one instance of the error (and any other
> > errors in the output). There were some bugs in the version of
> > Boost.Threads shipped with 1.27 having to do with "C" linkage, so if
> > this is a threads-related failure I suggest you get the latest CVS
> > just compile the regex library from <boost-root>/libs/regex/build.
> Here is where it starts:
> jam -sBOOST_ROOT=. -sTOOLS=gcc-stlport -d+2
> g++ -c -Wall -ftemplate-depth-100 -DBOOST_REGEX_NO_LIB=1
> -DBOOST_REGEX_STATIC_LINK=1 -D_STLP_DEBUG -g -O0 -fno-inline
> -D_STLP_USE_DYNAMIC_LIB -I"libs/regex/build" -I"." -isystem
> "/usr/local/gcc/gcc-3.0.4/include/stlport" -isystem
> "c:/downloads/STLPort-0601/stlport" -o
Hmm, are you sure you really have the latest CVS state? Where is
"c:/downlaods/STLPort-0601/stlport" coming from? What have you got
STLPORT_ROOT set to?
> In file included from
> from libs/regex/src/c_regex_traits.cpp:27:
> /usr/local/gcc/gcc-3.0.4/include/stlport/stl/_pair.h:37: template with
> And continues ad naseaum
Yes, thanks; you may notice I asked for a single instance of the error.
> It segfaults with gcc stream without stlport. This was why I decided
> try stlport to begin with.
> The program I was trying to compile can be found at:
> (if you wanted to see it. You might want to wait and let me do some
> work to try and produce some more specific questions about it).
Any legwork you can do would be a big help I'm sure, but I think this
mostly falls into John's court at this point.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk