Open longyuxi opened 1 year ago
This looks like an incompatibility with Python 3.11. #71 says that it fixes the issue.
I'm still seeing this issue today with Python 3.11, building from head of git. Looks like giotto-ph/gph/ext/pybind11 is still old.
-- Build files have been written to: /home/liebl/prj/giotto/giotto-ph/build/temp.linux-x86_64-cpython-311
[ 3%] Building CXX object gph/ext/junction/CMakeFiles/junction.dir/junction/ConcurrentMap_Grampa.cpp.o
[ 6%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/Core.cpp.o
[ 9%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/Heap.cpp.o
[ 12%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/UTCTime.cpp.o
[ 16%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/extra/Options.cpp.o
[ 19%] Building CXX object gph/ext/junction/CMakeFiles/junction.dir/junction/ConcurrentMap_Leapfrog.cpp.o
[ 22%] Building CXX object gph/ext/junction/CMakeFiles/junction.dir/junction/ConcurrentMap_Linear.cpp.o
[ 25%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/extra/Random.cpp.o
[ 29%] Building CXX object gph/ext/junction/CMakeFiles/junction.dir/junction/QSBR.cpp.o
[ 32%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/extra/TimeWaster.cpp.o
[ 35%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/impl/Affinity_FreeBSD.cpp.o
[ 38%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/impl/Affinity_Linux.cpp.o
[ 41%] Building CXX object gph/ext/junction/CMakeFiles/junction.dir/junction/details/Grampa.cpp.o
[ 45%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/impl/Affinity_Win32.cpp.o
[ 48%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/impl/Heap_DL.cpp.o
[ 51%] Building CXX object gph/ext/junction/CMakeFiles/junction.dir/junction/details/Leapfrog.cpp.o
[ 54%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/impl/Trace_Counters.cpp.o
[ 58%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/impl/Trace_MemLog.cpp.o
[ 61%] Building CXX object gph/ext/junction/CMakeFiles/junction.dir/junction/details/Linear.cpp.o
[ 64%] Building CXX object gph/ext/junction/turf/CMakeFiles/turf.dir/turf/impl/Trace_Null.cpp.o
[ 67%] Linking CXX static library libturf.a
[ 67%] Built target turf
[ 70%] Building CXX object CMakeFiles/gph_collapser.dir/gph/bindings/collapser_bindings.cpp.o
[ 74%] Building CXX object gph/ext/junction/CMakeFiles/junction.dir/junction/extra/MemHook_NBDS.cpp.o
[ 77%] Building CXX object gph/ext/junction/CMakeFiles/junction.dir/junction/extra/MemHook_TBB.cpp.o
[ 80%] Building CXX object gph/ext/junction/CMakeFiles/junction.dir/junction/striped/ConditionBank.cpp.o
[ 83%] Linking CXX static library libjunction.a
[ 83%] Built target junction
[ 87%] Building CXX object CMakeFiles/gph_ripser.dir/gph/bindings/ripser_bindings.cpp.o
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h: In function ‘std::string pybind11::detail::error_string()’:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:446:36: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
446 | " " + handle(frame->f_code->co_filename).cast<std::string>() +
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:446:75: error: expected primary-expression before ‘>’ token
446 | " " + handle(frame->f_code->co_filename).cast<std::string>() +
| ^
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:446:77: error: expected primary-expression before ‘)’ token
446 | " " + handle(frame->f_code->co_filename).cast<std::string>() +
| ^
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:448:29: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
448 | handle(frame->f_code->co_name).cast<std::string>() + "\n";
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:448:64: error: expected primary-expression before ‘>’ token
448 | handle(frame->f_code->co_name).cast<std::string>() + "\n";
| ^
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:448:66: error: expected primary-expression before ‘)’ token
448 | handle(frame->f_code->co_name).cast<std::string>() + "\n";
| ^
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:449:26: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
449 | frame = frame->f_back;
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h: In function ‘pybind11::function pybind11::detail::get_type_override(const void*, const pybind11::detail::type_info*, const char*)’:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:2291:49: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’; did you mean ‘cframe’?
2291 | PyFrameObject *frame = PyThreadState_Get()->frame;
| ^~~~~
| cframe
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:2292:41: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
2292 | if (frame && (std::string) str(frame->f_code->co_name) == name &&
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:2293:14: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
2293 | frame->f_code->co_argcount > 0) {
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:2296:18: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
2296 | frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0));
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:38,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:2296:30: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
2296 | frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0));
| ^~~~~~~~~~~~~~~~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:8:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
/home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp: In lambda function:
/home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:74:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
74 | for (size_t k = 0; k < size; ++k)
| ~~^~~~~~
/home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp: In lambda function:
/home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:96:30: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘pybind11::ssize_t’ {aka ‘long int’} [-Wsign-compare]
96 | for (size_t i = 0; i < dm.shape(0); i++)
| ~~^~~~~~~~~~~~~
/home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:97:32: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘pybind11::ssize_t’ {aka ‘long int’} [-Wsign-compare]
97 | for (size_t j = 0; j < dm.shape(1); j++)
| ~~^~~~~~~~~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:6:
/home/liebl/prj/giotto/giotto-ph/gph/src/Flag_complex_edge_collapser.h: In instantiation of ‘Gudhi::collapse::Flag_complex_edge_collapser<int, float>::edge_is_dominated(int, int, Gudhi::collapse::Flag_complex_edge_collapser<int, float>::edge_idx_t)::<lambda(auto:8&)> [with auto:8 = const int]’:
/home/liebl/prj/giotto/giotto-ph/gph/src/Flag_complex_edge_collapser.h:220:25: required from ‘void Gudhi::collapse::Flag_complex_edge_collapser<vertex_t, filt_t>::custom_intersection(vertex_t, vertex_t, Gudhi::collapse::Flag_complex_edge_collapser<vertex_t, filt_t>::edge_idx_t, const Func&) [with Func = Gudhi::collapse::Flag_complex_edge_collapser<int, float>::edge_is_dominated(int, int, Gudhi::collapse::Flag_complex_edge_collapser<int, float>::edge_idx_t)::<lambda(auto:8&)>; vertex_t = int; filt_t = float; Gudhi::collapse::Flag_complex_edge_collapser<vertex_t, filt_t>::edge_idx_t = int]’
/home/liebl/prj/giotto/giotto-ph/gph/src/Flag_complex_edge_collapser.h:278:28: required from ‘const bool Gudhi::collapse::Flag_complex_edge_collapser<vertex_t, filt_t>::edge_is_dominated(vertex_t, vertex_t, Gudhi::collapse::Flag_complex_edge_collapser<vertex_t, filt_t>::edge_idx_t) [with vertex_t = int; filt_t = float; Gudhi::collapse::Flag_complex_edge_collapser<vertex_t, filt_t>::edge_idx_t = int]’
/home/liebl/prj/giotto/giotto-ph/gph/src/Flag_complex_edge_collapser.h:489:18: required from ‘void Gudhi::collapse::Flag_complex_edge_collapser<vertex_t, filt_t>::process_edges(FilteredEdgeOutput) [with FilteredEdgeOutput = Gudhi::collapse::flag_complex_collapse_edges<std::vector<std::tuple<int, int, float> > >(const std::vector<std::tuple<int, int, float> >&)::<lambda(vertex_t, vertex_t, filt_t)>; vertex_t = int; filt_t = float]’
/home/liebl/prj/giotto/giotto-ph/gph/src/Flag_complex_edge_collapser.h:534:37: required from ‘auto Gudhi::collapse::flag_complex_collapse_edges(const FilteredEdgeRange&) [with FilteredEdgeRange = std::vector<std::tuple<int, int, float> >]’
/home/liebl/prj/giotto/giotto-ph/gph/bindings/collapser_bindings.cpp:81:72: required from here
/home/liebl/prj/giotto/giotto-ph/gph/src/Flag_complex_edge_collapser.h:288:32: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
288 | idx_ongoing < intersection_vec.size()) {
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h: In function ‘std::string pybind11::detail::error_string()’:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:446:36: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
446 | " " + handle(frame->f_code->co_filename).cast<std::string>() +
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:446:75: error: expected primary-expression before ‘>’ token
446 | " " + handle(frame->f_code->co_filename).cast<std::string>() +
| ^
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:446:77: error: expected primary-expression before ‘)’ token
446 | " " + handle(frame->f_code->co_filename).cast<std::string>() +
| ^
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:448:29: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
448 | handle(frame->f_code->co_name).cast<std::string>() + "\n";
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:448:64: error: expected primary-expression before ‘>’ token
448 | handle(frame->f_code->co_name).cast<std::string>() + "\n";
| ^
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:448:66: error: expected primary-expression before ‘)’ token
448 | handle(frame->f_code->co_name).cast<std::string>() + "\n";
| ^
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:449:26: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
449 | frame = frame->f_back;
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h: In function ‘pybind11::function pybind11::detail::get_type_override(const void*, const pybind11::detail::type_info*, const char*)’:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:2291:49: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’; did you mean ‘cframe’?
2291 | PyFrameObject *frame = PyThreadState_Get()->frame;
| ^~~~~
| cframe
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:2292:41: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
2292 | if (frame && (std::string) str(frame->f_code->co_name) == name &&
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:2293:14: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
2293 | frame->f_code->co_argcount > 0) {
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:2296:18: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
2296 | frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0));
| ^~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:38,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:2296:30: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
2296 | frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0));
| ^~~~~~~~~~~~~~~~
In file included from /home/liebl/anaconda3/envs/jupyterlab/include/python3.11/Python.h:42,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/detail/common.h:124,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pytypes.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/cast.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/attr.h:13,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/pybind11.h:45,
from /home/liebl/prj/giotto/giotto-ph/gph/ext/pybind11/include/pybind11/numpy.h:12,
from /home/liebl/prj/giotto/giotto-ph/gph/bindings/ripser_bindings.cpp:10:
/home/liebl/anaconda3/envs/jupyterlab/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
gmake[2]: *** [CMakeFiles/gph_collapser.dir/build.make:76: CMakeFiles/gph_collapser.dir/gph/bindings/collapser_bindings.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:193: CMakeFiles/gph_collapser.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
gmake[2]: *** [CMakeFiles/gph_ripser.dir/build.make:76: CMakeFiles/gph_ripser.dir/gph/bindings/ripser_bindings.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:140: CMakeFiles/gph_ripser.dir/all] Error 2
gmake: *** [Makefile:91: all] Error 2
Hi! Perhaps this is related to https://github.com/giotto-ai/giotto-tda/pull/689? Maybe a similar fix can be made here? @rballeba what do you think?
Yes! I updated the giotto-tda version for this reason. I have also created a pull request for giotto-ph. I'm going to tag you there.
Hi,
I have been trying to build giotto-ph from source following the developer guidelines at https://giotto-ai.github.io/giotto-ph/build/html/installation.html#developer-installation. My system is MacOS 13.4 with Intel i9 processor, and I am running this in a new Conda environment, I get the following error when I run
python -m pip install -e ".[dev]"
. Any clues as to what is going on? Thanks.