On 08/29/2013 04:20 PM, nvioli wrote:
Hello, I'm trying to install graph-tool on a CentOS 6.3 system. After spending a lot of time satisfying various dependencies, I finally got the configure script to run without error, only to receive a compile error during make.
Here's the end of make's output:
graph_closeness.cc:47: instantiated from here graph_closeness.hh:124: warning: unused parameter 'u' CXX graph_eigentrust.lo CXX graph_eigenvector.lo CXX graph_hits.lo CXX graph_katz.lo CXX graph_pagerank.lo CXX graph_trust_transitivity.lo CXXLD libgraph_tool_centrality.la /usr/bin/ld: /usr/local/lib/python2.7/config/libpython2.7.a(floatobject.o): relocation R_X86_64_32S against `PyFloat_Type' can not be used when making a shared object; recompile with -fPIC /usr/local/lib/python2.7/config/libpython2.7.a: could not read symbols: Bad value collect2: ld returned 1 exit status make[4]: *** [libgraph_tool_centrality.la] Error 1 make[4]: Leaving directory `/home/nvioli/project_recommendations/graph-tool-2.2.24/src/graph/centrality' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/home/nvioli/project_recommendations/graph-tool-2.2.24/src/graph' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/nvioli/project_recommendations/graph-tool-2.2.24/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/nvioli/project_recommendations/graph-tool-2.2.24' make: *** [all] Error 2
I found a forum post on a similar error from a few years ago, which suggested upgrading the compiler. I'm using gcc 4.4.6, and just spent two days trying to upgrade to the latest 4.8 release, to no avail. Can anyone make another suggestion for how I might go about getting graph-tool installed?
I looks like you have only compiled the static python libraries. You should compile python with "--enable-shared". This should fix this issue. You would have a lot less headaches by using a more recent operating system. GCC 4.4 for instance is quite old by now. But installing everything by hand seems like an overkill. Most modern GNU/Linux distros will have everything you need... Cheers, Tiago -- Tiago de Paula Peixoto <tiago@skewed.de>