Compilation of graph-tool 2.38 fails
Bug reports:
Please follow the general troubleshooting steps first:
-
Are you running the latest graph-tool
version? -
Do you observe the problem with the current git version? (They are currently the same) -
Are you using Macports or Homebrew? If yes, please submit an issue there instead: https://github.com/Homebrew/brew/issues and https://trac.macports.org/newticket -
Did you compile graph-tool
manually? -
If you answered yes above, did you use the exact same compiler to build graph-tool
,boost-python
andPython
?
libtool: compile: x86_64-pc-linux-gnu-g++ -std=gnu++17 -DHAVE_CONFIG_H -I. -I../../.. -I../../../src/boost-workaround -I../../../src/pcg-cpp/include -DHAVE_CONFIG_H -I../../../src/graph -I../../.. -I/usr/lib/python3.8/site-packages/cairo/include -I/usr/include/python3.8 -pthread -I/usr/include -I/usr/lib/python3.8/site-packages/numpy/core/include -DNDEBUG -fopenmp -O3 -fvisibility=default -fvisibility-inlines-hidden -Wno-deprecated -Wall -Wextra -ftemplate-backtrace-limit=0 -O2 -pipe -fomit-frame-pointer -fstack-check -c graph_sfdp.cc -fPIC -DPIC -o .libs/graph_sfdp.o
graph_sfdp.cc: In function ‘void sfdp_layout(graph_tool::GraphInterface&, boost::any, boost::any, boost::any, boost::any, boost::python::api::object, double, double, double, size_t, double, size_t, bool, bool, rng_t&)’:
graph_sfdp.cc:61:77: error: call of overloaded ‘any_cast<c_map_t>(boost::python::extract<boost::any&>)’ is ambiguous
61 | c_map_t c_map = any_cast<c_map_t>(python::extract<any&>(spring_parms[8]));
| ^
In file included from ../../../src/graph/graph.hh:33,
from ../../../src/graph/graph_filtering.hh:21,
from graph_sfdp.cc:18:
/usr/include/boost/any.hpp:265:15: note: candidate: ‘ValueType boost::any_cast(boost::any&) [with ValueType = boost::checked_vector_property_map<int, boost::typed_identity_property_map<long unsigned int> >]’
265 | ValueType any_cast(any & operand)
| ^~~~~~~~
/usr/include/boost/any.hpp:295:22: note: candidate: ‘ValueType boost::any_cast(const boost::any&) [with ValueType = boost::checked_vector_property_map<int, boost::typed_identity_property_map<long unsigned int> >]’
295 | inline ValueType any_cast(const any & operand)
| ^~~~~~~~
/usr/include/boost/any.hpp:303:22: note: candidate: ‘ValueType boost::any_cast(boost::any&&) [with ValueType = boost::checked_vector_property_map<int, boost::typed_identity_property_map<long unsigned int> >]’
303 | inline ValueType any_cast(any&& operand)
| ^~~~~~~~
make[4]: *** [Makefile:542: graph_sfdp.lo] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory '/var/tmp/portage/dev-python/graph-tool-2.38/work/graph-tool-2.38-python3_8/src/graph/layout'
make[3]: *** [Makefile:813: all-recursive] Error 1
make[3]: Leaving directory '/var/tmp/portage/dev-python/graph-tool-2.38/work/graph-tool-2.38-python3_8/src/graph'
make[2]: *** [Makefile:423: all-recursive] Error 1
make[2]: Leaving directory '/var/tmp/portage/dev-python/graph-tool-2.38/work/graph-tool-2.38-python3_8/src'
make[1]: *** [Makefile:603: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/dev-python/graph-tool-2.38/work/graph-tool-2.38-python3_8'
Do not forget to supply the following information:
-
A minimal and self-contained example that shows the problem. Just compile the library. -
Your operating system. Gentoo Linux. I use a modified distribution package. I have attached the build.logs that show the problem. -
The Python version you are using. I'm compiling against Python 3.8 and 3.9. -
If you compiled graph-tool manually: Your compiler version, as well as the version of Boost being used. Compiler: GCC 10.3.0 Boost: 1.76.0 -
If you are reporting a compilation error, please provide the entire ./configure
output, as well as the entire contents of theconfig.log
file and the entire compilation output.- graph-tool-2.38 with Gentoo build.log
- graph-tool-2.38 build.log
- config.log
See also #704 (the provided build.log is the same).