Note to self: double-check the template arguments before asking the compiler to do so.
(WordPress hates to wrap, so I did it, badly.)
mpicxx -Wno-deprecated -c -o pagerank.o pagerank.cc In file included from /usr/include/boost/graph/distributed/adjacency_list .hpp:3959, from pagerank.cc:3: /usr/include/boost/graph/distributed/adjlist/initialize.hpp: In member fu nction ‘void boost::adjacency_list<OutEdgeListS, boost::distributedS<Pr ocessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, Ed geProperty, GraphProperty, EdgeListS>::initialize(EdgeIterator, EdgeItera tor, EdgePropertyIterator, typename boost::detail::parallel::adjacency_li st_config<OutEdgeListS, ProcessGroup, InVertexListS, InDistribution, Dire ctedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::inherited ::vertices_size_type, const typename boost::graph::distributed::select_di stribution<InDistribution, VertexProperty, typename boost::detail::parall el::adjacency_list_config<OutEdgeListS, ProcessGroup, InVertexListS, InDi stribution, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeL istS>::inherited::vertices_size_type, ProcessGroup, typename boost::graph ::internal_vertex_name<VertexProperty>::type>::type&, boost::vecS) [with EdgeIterator = boost::graph::metis_reader::edge_iterator, EdgePropertyIte rator = boost::graph::metis_reader::edge_weight_iterator, OutEdgeListS = boost::vecS, ProcessGroup = boost::graph::distributed::mpi_process_group, InVertexListS = boost::vecS, InDistribution = boost::defaultS, DirectedS = boost::directedS, VertexProperty = boost::no_property, EdgeProperty = boost::no_property, GraphProperty = boost::no_property, EdgeListS = boost ::listS]’: /usr/include/boost/graph/distributed/adjacency_list.hpp:1644: instantia ted from ‘boost::adjacency_list<OutEdgeListS, boost::distributedS<Proce ssGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeP roperty, GraphProperty, EdgeListS>::adjacency_list(EdgeIterator, EdgeIter ator, EdgePropertyIterator, typename boost::detail::parallel::adjacency_l ist_config<OutEdgeListS, ProcessGroup, InVertexListS, InDistribution, Dir ectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::inherite d::vertices_size_type, const ProcessGroup&, const typename boost::graph:: distributed::select_distribution<InDistribution, VertexProperty, typename boost::detail::parallel::adjacency_list_config<OutEdgeListS, ProcessGrou p, InVertexListS, InDistribution, DirectedS, VertexProperty, EdgeProperty , GraphProperty, EdgeListS>::inherited::vertices_size_type, ProcessGroup, typename boost::graph::internal_vertex_name<VertexProperty>::type>::type &, const GraphProperty&) [with EdgeIterator = boost::graph::metis_reader: :edge_iterator, EdgePropertyIterator = boost::graph::metis_reader::edge_w eight_iterator, OutEdgeListS = boost::vecS, ProcessGroup = boost::graph:: distributed::mpi_process_group, InVertexListS = boost::vecS, InDistributi on = boost::defaultS, DirectedS = boost::directedS, VertexProperty = boos t::no_property, EdgeProperty = boost::no_property, GraphProperty = boost: :no_property, EdgeListS = boost::listS]’ pagerank.cc:37: instantiated from here /usr/include/boost/graph/distributed/adjlist/initialize.hpp:56: error: no matching function for call to ‘add_edge(boost::detail::parallel::globa l_descriptor<unsigned int>&, boost::detail::parallel::global_descriptor<u nsigned int>&, const double&, boost::adjacency_list<boost::vecS, boost::d istributedS<boost::graph::distributed::mpi_process_group, boost::vecS, bo ost::defaultS>, boost::directedS, boost::no_property, boost::no_property, boost::no_property, boost::listS>&)’ /usr/include/boost/graph/distributed/adjacency_list.hpp:2973: note: candi dates are: typename boost::adjacency_list<OutEdgeListS, boost::distribute dS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexPropert y, EdgeProperty, GraphProperty, EdgeListS>::lazy_add_edge_with_property b oost::add_edge(typename boost::adjacency_list<OutEdgeListS, boost::distri butedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexPro perty, EdgeProperty, GraphProperty, EdgeListS>::vertex_descriptor, typena me boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::vertex_descriptor, const typename boost::adjac ency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::edge_property_type&, boost::adjacency_list<OutEdgeListS, boos t::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>&) [with OutEdgeLi stS = boost::vecS, ProcessGroup = boost::graph::distributed::mpi_process_ group, InVertexListS = boost::vecS, InDistribution = boost::defaultS, Dir ectedS = boost::directedS, VertexProperty = boost::no_property, EdgePrope rty = boost::no_property, GraphProperty = boost::no_property, EdgeListS = boost::listS] make: *** [pagerank.o] Error 1
Well, obviously I called the wrong ctor, duh!