Hi,
I'm using GCC 4.4 with Boost 1.40, and I've recently came across a
library which uses tr1/tuple. The problem I'm running into now is that I
include , and it does not include , but
rather pulls in the Boost implementation -- which gives me compile
errors like
/usr/include/boost/tr1/tuple.hpp:63: error: ‘tuple’ is already declared
in this scope
/usr/include/boost/tr1/tuple.hpp:72: error: ‘tuple_size’ is already
declared in this scope
/usr/include/boost/tr1/tuple.hpp:73: error: ‘tuple_element’ is already
declared in this scope
So I'd really like to pull in the TR1 implementation from the compiler,
to avoid these collisions. In order to fix this, I tried to define
BOOST_HAS_GCC_TR1 as specified in the docs -- without success, I'm
getting now
/usr/include/boost/tr1/type_traits.hpp:13:49: error: no include path in
which to search for tr1/type_traits
As described in the docs, I added several more defines:
DBOOST_HAS_GCC_TR1
BOOST_TR1_DISABLE_INCLUDE_NEXT=1
BOOST_TR1_GCC_INCLUDE_PATH=/usr/include/c++/4.4/
without success, I'm still getting the "no include path" error. I'm
using the system boost, which is installed in /usr/include/boost; and
I'd really like to keep using it. Is there any other way to force Boost
to pick up the compiler's TR1 library?
Cheers,
Anteru