Install Error with Debian
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 3.8k
- Forks
- 899
- PR merge metrics
- No merged PRs in 30d
Description
Configuring for python 3.11...
-- Found AMD library: /usr/lib/x86_64-linux-gnu/libamd.so
-- Found AMD header in: /usr/include/suitesparse
-- Found CAMD library: /usr/lib/x86_64-linux-gnu/libcamd.so
-- Found CAMD header in: /usr/include/suitesparse
-- Found COLAMD library: /usr/lib/x86_64-linux-gnu/libcolamd.so
-- Found COLAMD header in: /usr/include/suitesparse
-- Found CCOLAMD library: /usr/lib/x86_64-linux-gnu/libccolamd.so
-- Found CCOLAMD header in: /usr/include/suitesparse
-- Found CHOLMOD library: /usr/lib/x86_64-linux-gnu/libcholmod.so
-- Found CHOLMOD header in: /usr/include/suitesparse
-- Found CXSPARSE library: /usr/lib/x86_64-linux-gnu/libcxsparse.so
-- Found SuiteSparseQR library: /usr/lib/x86_64-linux-gnu/libspqr.so
-- Found SuiteSparseQR header in: /usr/include/suitesparse
-- Found Intel Thread Building Blocks (TBB) library: /usr/lib/x86_64-linux-gnu/libtbb.so, assuming SuiteSparseQR was compiled with TBB.
-- Found Intel Thread Building Blocks (TBB) Malloc library: /usr/lib/x86_64-linux-gnu/libtbbmalloc.so
-- Found SuiteSparse_config library: /usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so
-- Found SuiteSparse_config header in: /usr/include/suitesparse
-- Adding librt: /usr/lib/x86_64-linux-gnu/librt.a to SuiteSparse_config libraries (required on Linux & Unix [not OSX] if SuiteSparse is compiled with timing).
-- Found METIS library: /usr/lib/x86_64-linux-gnu/libmetis.so.
-- Found SuiteSparse: TRUE (found version "5.12.0")
-- Found METIS: /usr/include (found suitable version "5.1.0", minimum required is "5.1.0")
-- Found AMD headers in: /usr/include/suitesparse
-- Found AMD library: /usr/lib/x86_64-linux-gnu/libamd.so
-- Found CAMD headers in: /usr/include/suitesparse
-- Found CAMD library: /usr/lib/x86_64-linux-gnu/libcamd.so
-- Found CCOLAMD headers in: /usr/include/suitesparse
-- Found CCOLAMD library: /usr/lib/x86_64-linux-gnu/libccolamd.so
-- Found CHOLMOD headers in: /usr/include/suitesparse
-- Found CHOLMOD library: /usr/lib/x86_64-linux-gnu/libcholmod.so
-- Found COLAMD headers in: /usr/include/suitesparse
-- Found COLAMD library: /usr/lib/x86_64-linux-gnu/libcolamd.so
-- Found SPQR headers in: /usr/include/suitesparse
-- Found SPQR library: /usr/lib/x86_64-linux-gnu/libspqr.so
-- Found Config headers in: /usr/include/suitesparse
-- Found Config library: /usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so
-- Found Intel Thread Building Blocks (TBB) library (2021.8 / ) include location: . Assuming SuiteSparseQR was compiled with TBB.
-- Adding librt to SuiteSparse_config libraries (required on Linux & Unix [not OSX] if SuiteSparse is compiled with timing).
-- Found METIS: /usr/include (found version "5.1.0")
-- Found SuiteSparse: /usr/include/suitesparse (found suitable version "5.12.0", minimum required is "5.12.0") found components: AMD CAMD CCOLAMD CHOLMOD COLAMD SPQR Config
-- Found required Ceres dependency: Eigen version 3.4.0 in /usr/share/eigen3/cmake
-- Found required Ceres dependency: glog
-- Found required Ceres dependency: gflags
-- Found Ceres version: 2.2.0 installed in: /usr/local with components: [EigenSparse, SparseLinearAlgebraLibrary, LAPACK, SuiteSparse, SchurSpecializations]
-- No preference for use of exported gflags CMake configuration set, and no hints for include/library directories provided. Defaulting to preferring an installed/exported gflags CMake configuration if available.
-- Found installed version of gflags: /usr/lib/x86_64-linux-gnu/cmake/gflags
-- Detected gflags version: 2.2.2
-- Found OpenCV: /usr/local (found version "4.8.0")
-- Found OpenCV: /usr/local (found version "4.8.0") found components: core imgproc calib3d imgcodecs
-- pybind11 v2.2.4
-- Configuring done
-- Generating done
-- Build files have been written to: /home/jdiaz031/Downloads/OpenSfM/cmake_build
Compiling extension...
[ 3%] Built target gtest
[ 7%] Built target akaze
[ 8%] Building CXX object foundation/CMakeFiles/foundation.dir/src/types.cc.o
[ 37%] Built target vl
[ 39%] Built target test_main
In file included from /home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/cast.h:16,
from /home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/attr.h:13,
from /home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/pybind11.h:43,
from /home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/numpy.h:12,
from /home/jdiaz031/Downloads/OpenSfM/opensfm/src/foundation/python_types.h:2,
from /home/jdiaz031/Downloads/OpenSfM/opensfm/src/foundation/src/types.cc:1:
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/detail/internals.h: In function ‘pybind11::detail::internals& pybind11::detail::get_internals()’:
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/detail/internals.h:194:27: warning: ‘void PyEval_InitThreads()’ is deprecated [-Wdeprecated-declarations]
194 | PyEval_InitThreads();
| ~~~~~~~~~~~~~~~~~~^~
In file included from /usr/include/python3.11/Python.h:95,
from /home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/detail/common.h:112,
from /home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/pytypes.h:12,
from /home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/cast.h:13:
/usr/include/python3.11/ceval.h:132:37: note: declared here
132 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
| ^~~~~~~~~~~~~~~~~~
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/cast.h: In function ‘std::string pybind11::detail::error_string()’:
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/cast.h:441:36: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
441 | " " + handle(frame->f_code->co_filename).caststd::string() +
| ^~
In file included from /usr/include/python3.11/Python.h:42:
/usr/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/cast.h:441:75: error: expected primary-expression before ‘>’ token
441 | " " + handle(frame->f_code->co_filename).caststd::string() +
| ^
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/cast.h:441:77: error: expected primary-expression before ‘)’ token
441 | " " + handle(frame->f_code->co_filename).caststd::string() +
| ^
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/cast.h:443:29: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
443 | handle(frame->f_code->co_name).caststd::string() + "\n";
| ^~
/usr/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/cast.h:443:64: error: expected primary-expression before ‘>’ token
443 | handle(frame->f_code->co_name).caststd::string() + "\n";
| ^
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/cast.h:443:66: error: expected primary-expression before ‘)’ token
443 | handle(frame->f_code->co_name).caststd::string() + "\n";
| ^
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/cast.h:444:26: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
444 | frame = frame->f_back;
| ^~
/usr/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/pybind11.h: In function ‘pybind11::function pybind11::get_type_overload(const void*, const detail::type_info*, const char*)’:
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/pybind11.h:1890:49: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’; did you mean ‘cframe’?
1890 | PyFrameObject *frame = PyThreadState_Get()->frame;
| ^~~~~
| cframe
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/pybind11.h:1891:41: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
1891 | if (frame && (std::string) str(frame->f_code->co_name) == name &&
| ^~
/usr/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/pybind11.h:1892:14: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
1892 | frame->f_code->co_argcount > 0) {
| ^~
/usr/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/pybind11.h:1895:18: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
1895 | frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0));
| ^~
/usr/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
In file included from /usr/include/python3.11/Python.h:38:
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/pybind11.h:1895:52: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
1895 | frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0));
| ^~
/usr/include/python3.11/pyport.h:24:38: note: in definition of macro ‘_Py_CAST’
24 | #define _Py_CAST(type, expr) ((type)(expr))
| ^~~~
/usr/include/python3.11/cpython/tupleobject.h:30:38: note: in expansion of macro ‘_PyTuple_CAST’
30 | #define PyTuple_GET_ITEM(op, index) (_PyTuple_CAST(op)->ob_item[index])
| ^~~~~~~~~~~~~
/home/jdiaz031/Downloads/OpenSfM/opensfm/src/third_party/pybind11/include/pybind11/pybind11.h:1895:30: note: in expansion of macro ‘PyTuple_GET_ITEM’
1895 | frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0));
| ^~~~~~~~~~~~~~~~
/usr/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
22 | typedef struct _frame PyFrameObject;
| ^~~~~~
make[2]: *** [foundation/CMakeFiles/foundation.dir/build.make:76: foundation/CMakeFiles/foundation.dir/src/types.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:434: foundation/CMakeFiles/foundation.dir/all] Error 2
make: *** [Makefile:101: all] Error 2
Traceback (most recent call last):
File "/home/jdiaz031/Downloads/OpenSfM/setup.py", line 60, in
build_c_extension()
File "/home/jdiaz031/Downloads/OpenSfM/setup.py", line 54, in build_c_extension
subprocess.check_call(
File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['make', '-j8']' returned non-zero exit status 2.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the Python 3.11 build output and the bundled files opensfm/src/third_party/pybind11/include/pybind11/cast.h and pybind11.h, where compilation fails while building foundation/src/types.cc. Re-run the extension build on Debian with Python 3.11 and compare the compatibility errors. Done means the C++ extension configures and compiles successfully.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cmake, debian, python
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100