Пытался запустить пример кода PBGL здесь . Он не компилируется на 1.72.0 с OS X. @ 27576714 приводит к мысли, что это исправит следующее:
dijkstra_shortest_paths(g, start,
distance_map(boost::make_iterator_property_map(
d.begin(), get(boost::vertex_index, g))));
, но, к сожалению, это не так. Кто-нибудь еще сталкивался с чем-то подобным?
In file included from /usr/local/include/boost/graph/distributed/mpi_process_group.hpp:22:
In file included from /usr/local/include/boost/optional.hpp:15:
In file included from /usr/local/include/boost/optional/optional.hpp:31:
In file included from /usr/local/include/boost/core/swap.hpp:27:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/algorithm:2495:5: error: static_assert failed due to requirement
'__is_forward_iterator<boost::detail::readable_pmap_iter<boost::iterators::transform_iterator<boost::detail::parallel::edge_descriptor<boost::detail::edge_desc_impl<boost::directed_tag,
unsigned long> >::out_generator<boost::adjacency_list<boost::vecS, boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS, boost::defaultS>,
boost::undirectedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_weight_t, float, boost::no_property>,
boost::no_property, boost::listS> >, boost::detail::out_edge_iter<std::__1::__wrap_iter<boost::detail::stored_edge_property<unsigned long,
boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
boost::no_property> > > > *>, unsigned long, boost::detail::edge_desc_impl<boost::directed_tag, unsigned long>, long>, boost::use_default, boost::use_default>,
boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >,