On 28.01.2015 19:42, [email protected] wrote: > Quoting Tiago de Paula Peixoto (2015-01-28 04:47:21) >> Can you try disabling sparsehash, with --disable-sparsehash, and see if >> the problem persists? This should get rid of any tr1 references. > > That did it! > > $/usr/bin/python3.3 -c 'import graph_tool.all as gt ; print(gt.__version__)' > 2.2.37dev (commit 201879ac, Fri Jan 9 15:46:17 2015 +0100) > > I am more than happy to continue debugging this until we figure out > why enabling sparsehash results in a segfault, let me know what I can > do.
Can you try the patch attached, and re-enable sparsehash? Best, Tiago -- Tiago de Paula Peixoto <[email protected]>
From 26e73ce071e1f53e9d333d6a673ee3198308784d Mon Sep 17 00:00:00 2001 From: Tiago de Paula Peixoto <[email protected]> Date: Wed, 28 Jan 2015 21:38:38 +0100 Subject: [PATCH] Remove references to tr1::hash<> graph_rewire.hh --- src/graph/generation/graph_rewiring.hh | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/graph/generation/graph_rewiring.hh b/src/graph/generation/graph_rewiring.hh index aeda72d..10e4250 100644 --- a/src/graph/generation/graph_rewiring.hh +++ b/src/graph/generation/graph_rewiring.hh @@ -1185,7 +1185,8 @@ private: BlockDeg _blockdeg; #ifdef HAVE_SPARSEHASH - typedef google::dense_hash_map<deg_t, Sampler<deg_t, boost::mpl::false_>*> sampler_map_t; + typedef google::dense_hash_map<deg_t, Sampler<deg_t, boost::mpl::false_>*, + std::hash<deg_t>> sampler_map_t; #else typedef std::unordered_map<deg_t, Sampler<deg_t, boost::mpl::false_>*> sampler_map_t; #endif @@ -1193,7 +1194,8 @@ private: sampler_map_t _sampler; #ifdef HAVE_SPARSEHASH - typedef google::dense_hash_map<deg_t, google::dense_hash_map<deg_t, double>> sprob_map_t; + typedef google::dense_hash_map<deg_t, google::dense_hash_map<deg_t, double>, + std::hash<deg_t>> sprob_map_t; #else typedef std::unordered_map<deg_t, std::unordered_map<deg_t, double>> sprob_map_t; #endif @@ -1202,15 +1204,18 @@ private: #ifdef HAVE_SPARSEHASH - typedef google::dense_hash_map<pair<deg_t, deg_t>, double, boost::hash<pair<deg_t, deg_t>>> prob_map_t; + typedef google::dense_hash_map<pair<deg_t, deg_t>, double, + boost::hash<pair<deg_t, deg_t>>> prob_map_t; #else - typedef std::unordered_map<pair<deg_t, deg_t>, double, boost::hash<pair<deg_t, deg_t>>> prob_map_t; + typedef std::unordered_map<pair<deg_t, deg_t>, double, + boost::hash<pair<deg_t, deg_t>>> prob_map_t; #endif prob_map_t _probs; #ifdef HAVE_SPARSEHASH - typedef google::dense_hash_map<deg_t, vector<size_t>> edge_map_t; + typedef google::dense_hash_map<deg_t, vector<size_t>, + std::hash<deg_t>> edge_map_t; #else typedef std::unordered_map<deg_t, vector<size_t>> edge_map_t; #endif @@ -1347,7 +1352,8 @@ private: rng_t& _rng; #ifdef HAVE_SPARSEHASH - google::dense_hash_map<deg_t, vector<vertex_t>> _vertices; + google::dense_hash_map<deg_t, vector<vertex_t>, + std::hash<deg_t>> _vertices; #else std::unordered_map<deg_t, vector<vertex_t>> _vertices; #endif -- 2.2.2
signature.asc
Description: OpenPGP digital signature
_______________________________________________ graph-tool mailing list [email protected] http://lists.skewed.de/mailman/listinfo/graph-tool
