I have been using b2 to build the preprocessed files for boost phoenix. When I try to do this it now fails with a failure to build thread.cpp "g++-4.6" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pedantic -pthread -Wextra -Wno-long-long -Wno-variadic-macros -Wunused-function -pedantic -DBOOST_ALL_NO_LIB=1 -DBOOST_SYSTEM_STATIC_LINK=1 -DBOOST_THREAD_BUILD_LIB=1 -DBOOST_THREAD_DONT_USE_CHRONO -DBOOST_THREAD_POSIX -DBOOST_WAVE_SUPPORT_THREADING=0 -DNDEBUG -I"../../.." -c -o "../../../bin.v2/libs/thread/build/gcc-4.6/release/link-static/threading-multi/wavetool-on/pthread/thread.o" "../../../libs/thread/src/pthread/thread.cpp" ../../../boost/ref.hpp:32:25: error: redefinition of ‘class boost::reference_wrapper<T>’ ../../../boost/core/ref.hpp:59:25: error: previous definition of ‘class boost::reference_wrapper<T>’ ../../../boost/ref.hpp:56:75: error: redefinition of ‘template<class T> const boost::reference_wrapper<T> boost::ref(T&)’ ../../../boost/core/ref.hpp:131:74: error: ‘template<class T> const boost::reference_wrapper<T> boost::ref(T&)’ previously declared here . It looks as though it is picking up two copies of the header file ref.hpp. This is the case with both gcc 4.6 and also gcc 4.9.0 It is not clear to me where the source file is coming from. At the moment all the libraries in my modular boost are checked out as develop. This is meaning that I cannot update my preprocessed files. Please advise me what to do. Thanks John