
Adam Stephens wrote:
Hi, all,
I'm trying to build Boost on linux using bjam. Everything seems to compile smoothly except one file in Boost.MPI. The error is lengthy, but the first part reads:
intel-linux.compile.c++ bin.v2/libs/mpi/build/intel-linux/release/threading-multi/datatypes.o ./boost/mpi/python/serialize.hpp(321): error: no operator "<<" matches these operands operand types are: boost::mpi::packed_oarchive << boost::mpl::if_<boost::is_fundamental<long>, long, long &>::type ar << extract<Type>(obj)(); ^ detected during: instantiation of "void boost::python::detail::direct_serialization_table<IArchiver, OArchiver>::default_saver<T>::operator()(OArchiver &, const boost::python::api::object &, unsigned int) [with IArchiver=boost::mpi::packed_iarchive, OArchiver=boost::mpi::packed_oarchive, T=long]" at line 158 of "./boost/function/function_template.hpp"
My compiler is Intel/9.1 and the implementation of MPI is openmpi 1.2.4. I've also tried to build using intel/10.1, and I got the same error.
Thanks for reporting this. We have the Intel compilers on one of our clusters, so I'll take a shot at fixing this today. - Doug