The graph-tool make command on CentOS 7 fails at this point:
$ cd graph-tool-2.2.35
$ ./configure --with-sparsehash-prefix=google
$ make
make all-recursive
make[1]: Entering directory `/home/user/Downloads/graph-tool-2.2.35'
Making all in src
…
make[4]: Entering directory `/home/user/Downloads/graph-tool-2.2.35/src/graph/topology'
CXX graph_subgraph_isomorphism.lo
graph_subgraph_isomorphism.cc: In instantiation of 'void get_subgraphs::operator()(const Graph1&, const Graph2*, VertexLabel, boost::any, EdgeLabel, boost::any, std::vector<VertexMap>&, size_t, bool, bool) const [with Graph1 = boost::adj_list<long unsigned int>; Graph2 = boost::adj_list<long unsigned int>; VertexLabel = boost::unchecked_vector_property_map<int, boost::typed_identity_property_map<long unsigned int> >; EdgeLabel = boost::unchecked_vector_property_map<int, boost::adj_edge_index_property_map<long unsigned int> >; VertexMap = boost::checked_vector_property_map<int, boost::typed_identity_property_map<long unsigned int> >; size_t = long unsigned int]':
/usr/include/c++/4.8.2/functional:1305:50: required from '_Result std::_Bind<_Functor(_Bound_args ...)>::__call_c(std::tuple<_Args2 ...>&&, std::_Index_tuple<_Indexes ...>) const [with _Result = void; _Args = {boost::adj_list<long unsigned int>&, boost::adj_list<long unsigned int>*&, boost::unchecked_vector_property_map<int, boost::typed_identity_property_map<long unsigned int> >&, boost::unchecked_vector_property_map<int, boost::adj_edge_index_property_map<long unsigned int> >&}; long unsigned int ..._Indexes = {0ul, 1ul, 2ul, 3ul, 4ul, 5ul, 6ul, 7ul, 8ul, 9ul}; _Functor = get_subgraphs; _Bound_args = {std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>, boost::any, std::_Placeholder<4>, boost::any, std::reference_wrapper<std::vector<boost::checked_vector_property_map<int, boost::typed_identity_property_map<long unsigned int> >, std::allocator<boost::checked_vector_property_map<int, boost::typed_identity_property_map<long unsigned int> > > > >, long unsigned int, bool, bool}]’
…
_descriptor>, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::
na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::
na, mpl_::na, mpl_::na, mpl_::na>}]'
graph_subgraph_isomorphism.cc:178:56: required from here
graph_subgraph_isomorphism.cc:108:114: error: 'vf2_subgraph_mono' was not declared in this scope
vertices_equivalent(make_property_map_equivalent(vertex_label1, vertex_label2)));
^
…
, graph_tool::ConstantPropertyMap<bool, boost::adj_list<long unsigned int>::edge_descriptor>, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>}]'
graph_subgraph_isomorphism.cc:178:56: required from here
graph_subgraph_isomorphism.cc:108:114: error: 'vf2_subgraph_mono' was not declared in this scope
Any help fixing this would be greatly appreciated.
I’m building graph-tool from the latest source, graph-tool-2.2.35.tar.bz2. CGAL is built successfully from source (there aren’t any cgal-devel packages yet in the .el7 repos), and because the .el 7 sparsehash-devel package puts its libraries in /usr/include/google, the specific ./configure command for CentOS 7 above is necessary. This runs successfully, and every compile up to graph_subgraph_isomorphism is successful.