Hi,
Op 28 jun. 2014 om 09:37 heeft "Fletcher, John P"
On Friday 27 June 2014 19:53:18 Fletcher, John P wrote:
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
Please advise me what to do.
Check that you completely updated all submodules, core and utility in particular. If they are fully updated I suspect you may need to remove $BOOST_ROOT/boost and run 'b2 headers'.
I have done that and it still fails. On closer inspection the failure is related to boost/bind in some way:
In file included from ../../../boost/bind/bind.hpp:25:0, from ../../../boost/bind.hpp:22, from ../../../boost/thread/detail/thread.hpp:29, from ../../../boost/thread/thread_only.hpp:22, from ../../../libs/thread/src/pthread/thread.cpp:11: ../../../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>’
John
Further information: thread was changed on 9 June 2014 to use core versions of files.
It is clear reading the codes that boost/core/ref.hpp is a recent (2014) development of boost/ref.hpp. They have different include protection but are not able to work together as they both define the same structure (see error messages) above.
Did you use: git submodule update --init before removing boost and running b2 headers? It solved similar problems for me. https://svn.boost.org/trac/boost/wiki/StartModMaint Sent from iPad. Barend Gehrels www.barendgehrels.nl