Boost logo

Boost :

Subject: Re: [boost] [xpressive] Performance Tuning?
From: Hartmut Kaiser (hartmut.kaiser_at_[hidden])
Date: 2009-07-19 15:44:06


> > Please use Boost SVN trunk here:
> >
> > https://svn.boost.org/svn/boost/trunk/boost/spirit
> > https://svn.boost.org/svn/boost/trunk/libs/spirit
> >
> > and make sure to put these directories in front of your normal Boost
> > installation (V1.37 is required at minimum). The
> > high_resultion_timer.hpp is
> > here:
> >
> > https://svn.boost.org/svn/boost/trunk/libs/spirit/benchmarks/
> > high_resolution
> > _timer.hpp
> >
>
> Hi Hartmut,
>
> So,
>
> I did the following and placed them in different directories.
> $ svn checkout https://svn.boost.org/svn/boost/trunk/boost/spirit
> $ svn checkout https://svn.boost.org/svn/boost/trunk/libs/spirit
>
> In both cases it states "Checked out revision 55030".
>
> And shoved high_resolution_timer.hpp in the appropriate place.
>
> After modifying "uint_parser.cpp" to add
>
> #include <iostream>
>
> I get the following error:
>
> $ g++-4 -I ~/Desktop/boost_spirit/ -I ~Desktop/libs_spirit/ -I ~/
> Desktop/boost_1_39_0 -o uint_parser uint_parser.cpp

You don't need to add the libs/spirit directory to your sinclude path.
That's just where the examples, tests and documentation resides. Sorry, I
should have been more explicit.

> uint_parser.cpp: In function 'int main()':
> uint_parser.cpp:37: error: 'qi::int_' has not been declared
> uint_parser.cpp:104: error: 'int_' was not declared in this scope
>
> which seems fairly fundamental.

I certainly can only guess what happens there, but I think the checkout

   svn checkout https://svn.boost.org/svn/boost/trunk/boost/spirit

creates a directory ./spirit. Could you try moving this into a subdirectory
boost, additionally. The final directory structure must be:

   $SPIRIT21_ROOT/boost/spirit (/include/...)

And the -I $SPIRIT21_ROOT needs to be added to the compiler command line.
All spirit headers are included as

#include <boost/spirit/include/...>

that means you need to tell the compiler the base directory the
'boost/spirit/...' is in.

> Do I have the correct revision of Spirit? Any suggestions?

Seems to be the correct revision.

HTH
Regards Hartmut


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk