Closed dobairoland closed 1 year ago
I'm having the same issue...
➜ ~ pip install gdbgui
Defaulting to user installation because normal site-packages is not writeable
Collecting gdbgui
Using cached gdbgui-0.15.1.0-py3-none-any.whl (1.3 MB)
Collecting bidict==0.21.2
Using cached bidict-0.21.2-py2.py3-none-any.whl (37 kB)
Requirement already satisfied: brotli==1.0.9 in /usr/lib64/python3.11/site-packages (from gdbgui) (1.0.9)
Collecting click==8.0.1
Using cached click-8.0.1-py3-none-any.whl (97 kB)
Requirement already satisfied: dnspython==2.2.1 in /usr/lib/python3.11/site-packages (from gdbgui) (2.2.1)
Collecting eventlet==0.33.0
Using cached eventlet-0.33.0-py2.py3-none-any.whl (226 kB)
Collecting flask==2.0.1
Using cached Flask-2.0.1-py3-none-any.whl (94 kB)
Collecting flask-compress==1.10.1
Using cached Flask_Compress-1.10.1-py3-none-any.whl (7.9 kB)
Collecting flask-socketio==5.1.1
Using cached Flask_SocketIO-5.1.1-py3-none-any.whl (17 kB)
Collecting greenlet==1.1.2
Using cached greenlet-1.1.2.tar.gz (91 kB)
Preparing metadata (setup.py) ... done
Requirement already satisfied: itsdangerous==2.0.1 in ./.local/lib/python3.11/site-packages (from gdbgui) (2.0.1)
Requirement already satisfied: jinja2==3.0.1 in ./.local/lib/python3.11/site-packages (from gdbgui) (3.0.1)
Requirement already satisfied: markupsafe==2.0.1 in ./.local/lib/python3.11/site-packages (from gdbgui) (2.0.1)
Requirement already satisfied: pygdbmi==0.10.0.1 in ./.local/lib/python3.11/site-packages (from gdbgui) (0.10.0.1)
Requirement already satisfied: pygments==2.10.0 in ./.local/lib/python3.11/site-packages (from gdbgui) (2.10.0)
Requirement already satisfied: python-engineio==4.2.1 in ./.local/lib/python3.11/site-packages (from gdbgui) (4.2.1)
Collecting python-socketio==5.4.0
Using cached python_socketio-5.4.0-py3-none-any.whl (55 kB)
Requirement already satisfied: six==1.16.0 in /usr/lib/python3.11/site-packages (from gdbgui) (1.16.0)
Requirement already satisfied: werkzeug==2.0.1 in ./.local/lib/python3.11/site-packages (from gdbgui) (2.0.1)
Building wheels for collected packages: greenlet
Building wheel for greenlet (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> [273 lines of output]
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-cpython-311
creating build/lib.linux-x86_64-cpython-311/greenlet
copying src/greenlet/__init__.py -> build/lib.linux-x86_64-cpython-311/greenlet
creating build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_weakref.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_version.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_tracing.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_throw.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_stack_saved.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_leaks.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_greenlet.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_generator_nested.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_generator.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_gc.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_extension_interface.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_cpp.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_contextvars.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/__init__.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
running egg_info
writing src/greenlet.egg-info/PKG-INFO
writing dependency_links to src/greenlet.egg-info/dependency_links.txt
writing requirements to src/greenlet.egg-info/requires.txt
writing top-level names to src/greenlet.egg-info/top_level.txt
reading manifest file 'src/greenlet.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
no previously-included directories found matching 'docs/_build'
warning: no files found matching '*.py' under directory 'appveyor'
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '*.pyd' found anywhere in distribution
warning: no previously-included files matching '*.so' found anywhere in distribution
warning: no previously-included files matching '.coverage' found anywhere in distribution
adding license file 'LICENSE'
adding license file 'LICENSE.PSF'
adding license file 'AUTHORS'
writing manifest file 'src/greenlet.egg-info/SOURCES.txt'
/usr/lib/python3.11/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning: Installing 'greenlet.platform' as data is deprecated, please list it in `packages`.
!!
############################
# Package would be ignored #
############################
Python recognizes 'greenlet.platform' as an importable package,
but it is not listed in the `packages` configuration of setuptools.
'greenlet.platform' has been automatically added to the distribution only
because it may contain data files, but this behavior is likely to change
in future versions of setuptools (and therefore is considered deprecated).
Please make sure that 'greenlet.platform' is included as a package by using
the `packages` configuration field or the proper discovery methods
(for example by using `find_namespace_packages(...)`/`find_namespace:`
instead of `find_packages(...)`/`find:`).
You can read more about "package discovery" and "data files" on setuptools
documentation page.
!!
check.warn(importable)
copying src/greenlet/greenlet.c -> build/lib.linux-x86_64-cpython-311/greenlet
copying src/greenlet/greenlet.h -> build/lib.linux-x86_64-cpython-311/greenlet
copying src/greenlet/slp_platformselect.h -> build/lib.linux-x86_64-cpython-311/greenlet
creating build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/setup_switch_x64_masm.cmd -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_aarch64_gcc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_alpha_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_amd64_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_arm32_gcc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_arm32_ios.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_csky_gcc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_m68k_gcc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_mips_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc64_aix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc64_linux.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc_aix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc_linux.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc_macosx.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_riscv_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_s390_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_sparc_sun_gcc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x32_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x64_masm.asm -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x64_masm.obj -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x64_msvc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x86_msvc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x86_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/tests/_test_extension.c -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/_test_extension_cpp.cpp -> build/lib.linux-x86_64-cpython-311/greenlet/tests
running build_ext
building 'greenlet._greenlet' extension
creating build/temp.linux-x86_64-cpython-311
creating build/temp.linux-x86_64-cpython-311/src
creating build/temp.linux-x86_64-cpython-311/src/greenlet
gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/python3.11 -c src/greenlet/greenlet.c -o build/temp.linux-x86_64-cpython-311/src/greenlet/greenlet.o
In file included from src/greenlet/greenlet.c:11:
src/greenlet/greenlet.h:42:5: error: unknown type name ‘CFrame’
42 | CFrame* cframe;
| ^~~~~~
src/greenlet/greenlet.c: In function ‘green_clear_exc’:
src/greenlet/greenlet.c:173:17: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
173 | g->exc_state.exc_type = NULL;
| ^
src/greenlet/greenlet.c:175:17: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
175 | g->exc_state.exc_traceback = NULL;
| ^
src/greenlet/greenlet.c: In function ‘g_switchstack’:
src/greenlet/greenlet.c:528:44: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘recursion_depth’; did you mean ‘recursion_limit’?
528 | current->recursion_depth = tstate->recursion_depth;
| ^~~~~~~~~~~~~~~
| recursion_limit
src/greenlet/greenlet.c:529:38: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’; did you mean ‘cframe’?
529 | current->top_frame = tstate->frame;
| ^~~~~
| cframe
src/greenlet/greenlet.c:552:25: warning: assignment to ‘int *’ from incompatible pointer type ‘_PyCFrame *’ [-Wincompatible-pointer-types]
552 | current->cframe = tstate->cframe;
| ^
src/greenlet/greenlet.c:577:17: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘recursion_depth’; did you mean ‘recursion_limit’?
577 | tstate->recursion_depth = target->recursion_depth;
| ^~~~~~~~~~~~~~~
| recursion_limit
src/greenlet/greenlet.c:578:17: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’; did you mean ‘cframe’?
578 | tstate->frame = target->top_frame;
| ^~~~~
| cframe
src/greenlet/greenlet.c:601:24: warning: assignment to ‘_PyCFrame *’ from incompatible pointer type ‘int *’ [-Wincompatible-pointer-types]
601 | tstate->cframe = target->cframe;
| ^
src/greenlet/greenlet.c: In function ‘g_initialstub’:
src/greenlet/greenlet.c:813:5: error: unknown type name ‘CFrame’
813 | CFrame trace_info;
| ^~~~~~
src/greenlet/greenlet.c:857:18: error: incompatible types when assigning to type ‘int’ from type ‘_PyCFrame’
857 | trace_info = *PyThreadState_GET()->cframe;
| ^
src/greenlet/greenlet.c:864:17: error: request for member ‘previous’ in something not a structure or union
864 | self->cframe->previous = &PyThreadState_GET()->root_cframe;
| ^~
src/greenlet/greenlet.c:878:50: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘recursion_depth’; did you mean ‘recursion_limit’?
878 | self->recursion_depth = PyThreadState_GET()->recursion_depth;
| ^~~~~~~~~~~~~~~
| recursion_limit
src/greenlet/greenlet.c: In function ‘green_new’:
src/greenlet/greenlet.c:1018:34: warning: assignment to ‘int *’ from incompatible pointer type ‘_PyCFrame *’ [-Wincompatible-pointer-types]
1018 | ((PyGreenlet*)o)->cframe = &PyThreadState_GET()->root_cframe;
| ^
In file included from /usr/include/python3.11/Python.h:45,
from src/greenlet/greenlet.h:8:
src/greenlet/greenlet.c: In function ‘green_traverse’:
src/greenlet/greenlet.c:1124:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1124 | Py_VISIT(self->exc_state.exc_type);
| ^
/usr/include/python3.11/objimpl.h:199:13: note: in definition of macro ‘Py_VISIT’
199 | if (op) { \
| ^~
In file included from /usr/include/python3.11/Python.h:38:
src/greenlet/greenlet.c:1124:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1124 | Py_VISIT(self->exc_state.exc_type);
| ^
/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/objimpl.h:200:30: note: in expansion of macro ‘_PyObject_CAST’
200 | int vret = visit(_PyObject_CAST(op), arg); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1124:5: note: in expansion of macro ‘Py_VISIT’
1124 | Py_VISIT(self->exc_state.exc_type);
| ^~~~~~~~
src/greenlet/greenlet.c:1126:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1126 | Py_VISIT(self->exc_state.exc_traceback);
| ^
/usr/include/python3.11/objimpl.h:199:13: note: in definition of macro ‘Py_VISIT’
199 | if (op) { \
| ^~
src/greenlet/greenlet.c:1126:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1126 | Py_VISIT(self->exc_state.exc_traceback);
| ^
/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/objimpl.h:200:30: note: in expansion of macro ‘_PyObject_CAST’
200 | int vret = visit(_PyObject_CAST(op), arg); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1126:5: note: in expansion of macro ‘Py_VISIT’
1126 | Py_VISIT(self->exc_state.exc_traceback);
| ^~~~~~~~
src/greenlet/greenlet.c: In function ‘green_clear’:
src/greenlet/greenlet.c:1162:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1162 | Py_CLEAR(self->exc_state.exc_type);
| ^
/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/object.h:581:29: note: in expansion of macro ‘_PyObject_CAST’
581 | PyObject *_py_tmp = _PyObject_CAST(op); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1162:5: note: in expansion of macro ‘Py_CLEAR’
1162 | Py_CLEAR(self->exc_state.exc_type);
| ^~~~~~~~
In file included from /usr/include/python3.11/Python.h:44:
src/greenlet/greenlet.c:1162:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1162 | Py_CLEAR(self->exc_state.exc_type);
| ^
/usr/include/python3.11/object.h:583:14: note: in definition of macro ‘Py_CLEAR’
583 | (op) = NULL; \
| ^~
src/greenlet/greenlet.c:1164:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1164 | Py_CLEAR(self->exc_state.exc_traceback);
| ^
/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/object.h:581:29: note: in expansion of macro ‘_PyObject_CAST’
581 | PyObject *_py_tmp = _PyObject_CAST(op); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1164:5: note: in expansion of macro ‘Py_CLEAR’
1164 | Py_CLEAR(self->exc_state.exc_traceback);
| ^~~~~~~~
src/greenlet/greenlet.c:1164:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1164 | Py_CLEAR(self->exc_state.exc_traceback);
| ^
/usr/include/python3.11/object.h:583:14: note: in definition of macro ‘Py_CLEAR’
583 | (op) = NULL; \
| ^~
src/greenlet/greenlet.c: In function ‘green_dealloc’:
src/greenlet/greenlet.c:1256:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1256 | Py_CLEAR(self->exc_state.exc_type);
| ^
/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/object.h:581:29: note: in expansion of macro ‘_PyObject_CAST’
581 | PyObject *_py_tmp = _PyObject_CAST(op); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1256:5: note: in expansion of macro ‘Py_CLEAR’
1256 | Py_CLEAR(self->exc_state.exc_type);
| ^~~~~~~~
src/greenlet/greenlet.c:1256:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1256 | Py_CLEAR(self->exc_state.exc_type);
| ^
/usr/include/python3.11/object.h:583:14: note: in definition of macro ‘Py_CLEAR’
583 | (op) = NULL; \
| ^~
src/greenlet/greenlet.c:1258:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1258 | Py_CLEAR(self->exc_state.exc_traceback);
| ^
/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/object.h:581:29: note: in expansion of macro ‘_PyObject_CAST’
581 | PyObject *_py_tmp = _PyObject_CAST(op); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1258:5: note: in expansion of macro ‘Py_CLEAR’
1258 | Py_CLEAR(self->exc_state.exc_traceback);
| ^~~~~~~~
src/greenlet/greenlet.c:1258:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1258 | Py_CLEAR(self->exc_state.exc_traceback);
| ^
/usr/include/python3.11/object.h:583:14: note: in definition of macro ‘Py_CLEAR’
583 | (op) = NULL; \
| ^~
src/greenlet/greenlet.c: In function ‘PyGreenlet_New’:
src/greenlet/greenlet.c:1777:15: warning: assignment to ‘int *’ from incompatible pointer type ‘_PyCFrame *’ [-Wincompatible-pointer-types]
1777 | g->cframe = &PyThreadState_GET()->root_cframe;
| ^
error: command '/usr/lib64/ccache/gcc' failed with exit code 1
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for greenlet
Running setup.py clean for greenlet
Failed to build greenlet
Installing collected packages: greenlet, click, bidict, python-socketio, flask, eventlet, flask-socketio, flask-compress, gdbgui
Attempting uninstall: greenlet
Found existing installation: greenlet 2.0.0a2
Uninstalling greenlet-2.0.0a2:
Successfully uninstalled greenlet-2.0.0a2
Running setup.py install for greenlet ... error
error: subprocess-exited-with-error
× Running setup.py install for greenlet did not run successfully.
│ exit code: 1
╰─> [275 lines of output]
running install
/usr/lib/python3.11/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
running build
running build_py
creating build
creating build/lib.linux-x86_64-cpython-311
creating build/lib.linux-x86_64-cpython-311/greenlet
copying src/greenlet/__init__.py -> build/lib.linux-x86_64-cpython-311/greenlet
creating build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_weakref.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_version.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_tracing.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_throw.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_stack_saved.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_leaks.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_greenlet.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_generator_nested.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_generator.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_gc.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_extension_interface.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_cpp.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/test_contextvars.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/__init__.py -> build/lib.linux-x86_64-cpython-311/greenlet/tests
running egg_info
writing src/greenlet.egg-info/PKG-INFO
writing dependency_links to src/greenlet.egg-info/dependency_links.txt
writing requirements to src/greenlet.egg-info/requires.txt
writing top-level names to src/greenlet.egg-info/top_level.txt
reading manifest file 'src/greenlet.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
no previously-included directories found matching 'docs/_build'
warning: no files found matching '*.py' under directory 'appveyor'
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '*.pyd' found anywhere in distribution
warning: no previously-included files matching '*.so' found anywhere in distribution
warning: no previously-included files matching '.coverage' found anywhere in distribution
adding license file 'LICENSE'
adding license file 'LICENSE.PSF'
adding license file 'AUTHORS'
writing manifest file 'src/greenlet.egg-info/SOURCES.txt'
/usr/lib/python3.11/site-packages/setuptools/command/build_py.py:153: SetuptoolsDeprecationWarning: Installing 'greenlet.platform' as data is deprecated, please list it in `packages`.
!!
############################
# Package would be ignored #
############################
Python recognizes 'greenlet.platform' as an importable package,
but it is not listed in the `packages` configuration of setuptools.
'greenlet.platform' has been automatically added to the distribution only
because it may contain data files, but this behavior is likely to change
in future versions of setuptools (and therefore is considered deprecated).
Please make sure that 'greenlet.platform' is included as a package by using
the `packages` configuration field or the proper discovery methods
(for example by using `find_namespace_packages(...)`/`find_namespace:`
instead of `find_packages(...)`/`find:`).
You can read more about "package discovery" and "data files" on setuptools
documentation page.
!!
check.warn(importable)
copying src/greenlet/greenlet.c -> build/lib.linux-x86_64-cpython-311/greenlet
copying src/greenlet/greenlet.h -> build/lib.linux-x86_64-cpython-311/greenlet
copying src/greenlet/slp_platformselect.h -> build/lib.linux-x86_64-cpython-311/greenlet
creating build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/setup_switch_x64_masm.cmd -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_aarch64_gcc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_alpha_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_amd64_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_arm32_gcc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_arm32_ios.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_csky_gcc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_m68k_gcc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_mips_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc64_aix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc64_linux.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc_aix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc_linux.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc_macosx.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_ppc_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_riscv_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_s390_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_sparc_sun_gcc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x32_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x64_masm.asm -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x64_masm.obj -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x64_msvc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x86_msvc.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/platform/switch_x86_unix.h -> build/lib.linux-x86_64-cpython-311/greenlet/platform
copying src/greenlet/tests/_test_extension.c -> build/lib.linux-x86_64-cpython-311/greenlet/tests
copying src/greenlet/tests/_test_extension_cpp.cpp -> build/lib.linux-x86_64-cpython-311/greenlet/tests
running build_ext
building 'greenlet._greenlet' extension
creating build/temp.linux-x86_64-cpython-311
creating build/temp.linux-x86_64-cpython-311/src
creating build/temp.linux-x86_64-cpython-311/src/greenlet
gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/python3.11 -c src/greenlet/greenlet.c -o build/temp.linux-x86_64-cpython-311/src/greenlet/greenlet.o
In file included from src/greenlet/greenlet.c:11:
src/greenlet/greenlet.h:42:5: error: unknown type name ‘CFrame’
42 | CFrame* cframe;
| ^~~~~~
src/greenlet/greenlet.c: In function ‘green_clear_exc’:
src/greenlet/greenlet.c:173:17: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
173 | g->exc_state.exc_type = NULL;
| ^
src/greenlet/greenlet.c:175:17: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
175 | g->exc_state.exc_traceback = NULL;
| ^
src/greenlet/greenlet.c: In function ‘g_switchstack’:
src/greenlet/greenlet.c:528:44: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘recursion_depth’; did you mean ‘recursion_limit’?
528 | current->recursion_depth = tstate->recursion_depth;
| ^~~~~~~~~~~~~~~
| recursion_limit
src/greenlet/greenlet.c:529:38: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’; did you mean ‘cframe’?
529 | current->top_frame = tstate->frame;
| ^~~~~
| cframe
src/greenlet/greenlet.c:552:25: warning: assignment to ‘int *’ from incompatible pointer type ‘_PyCFrame *’ [-Wincompatible-pointer-types]
552 | current->cframe = tstate->cframe;
| ^
src/greenlet/greenlet.c:577:17: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘recursion_depth’; did you mean ‘recursion_limit’?
577 | tstate->recursion_depth = target->recursion_depth;
| ^~~~~~~~~~~~~~~
| recursion_limit
src/greenlet/greenlet.c:578:17: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’; did you mean ‘cframe’?
578 | tstate->frame = target->top_frame;
| ^~~~~
| cframe
src/greenlet/greenlet.c:601:24: warning: assignment to ‘_PyCFrame *’ from incompatible pointer type ‘int *’ [-Wincompatible-pointer-types]
601 | tstate->cframe = target->cframe;
| ^
src/greenlet/greenlet.c: In function ‘g_initialstub’:
src/greenlet/greenlet.c:813:5: error: unknown type name ‘CFrame’
813 | CFrame trace_info;
| ^~~~~~
src/greenlet/greenlet.c:857:18: error: incompatible types when assigning to type ‘int’ from type ‘_PyCFrame’
857 | trace_info = *PyThreadState_GET()->cframe;
| ^
src/greenlet/greenlet.c:864:17: error: request for member ‘previous’ in something not a structure or union
864 | self->cframe->previous = &PyThreadState_GET()->root_cframe;
| ^~
src/greenlet/greenlet.c:878:50: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘recursion_depth’; did you mean ‘recursion_limit’?
878 | self->recursion_depth = PyThreadState_GET()->recursion_depth;
| ^~~~~~~~~~~~~~~
| recursion_limit
src/greenlet/greenlet.c: In function ‘green_new’:
src/greenlet/greenlet.c:1018:34: warning: assignment to ‘int *’ from incompatible pointer type ‘_PyCFrame *’ [-Wincompatible-pointer-types]
1018 | ((PyGreenlet*)o)->cframe = &PyThreadState_GET()->root_cframe;
| ^
In file included from /usr/include/python3.11/Python.h:45,
from src/greenlet/greenlet.h:8:
src/greenlet/greenlet.c: In function ‘green_traverse’:
src/greenlet/greenlet.c:1124:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1124 | Py_VISIT(self->exc_state.exc_type);
| ^
/usr/include/python3.11/objimpl.h:199:13: note: in definition of macro ‘Py_VISIT’
199 | if (op) { \
| ^~
In file included from /usr/include/python3.11/Python.h:38:
src/greenlet/greenlet.c:1124:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1124 | Py_VISIT(self->exc_state.exc_type);
| ^
/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/objimpl.h:200:30: note: in expansion of macro ‘_PyObject_CAST’
200 | int vret = visit(_PyObject_CAST(op), arg); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1124:5: note: in expansion of macro ‘Py_VISIT’
1124 | Py_VISIT(self->exc_state.exc_type);
| ^~~~~~~~
src/greenlet/greenlet.c:1126:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1126 | Py_VISIT(self->exc_state.exc_traceback);
| ^
/usr/include/python3.11/objimpl.h:199:13: note: in definition of macro ‘Py_VISIT’
199 | if (op) { \
| ^~
src/greenlet/greenlet.c:1126:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1126 | Py_VISIT(self->exc_state.exc_traceback);
| ^
/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/objimpl.h:200:30: note: in expansion of macro ‘_PyObject_CAST’
200 | int vret = visit(_PyObject_CAST(op), arg); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1126:5: note: in expansion of macro ‘Py_VISIT’
1126 | Py_VISIT(self->exc_state.exc_traceback);
| ^~~~~~~~
src/greenlet/greenlet.c: In function ‘green_clear’:
src/greenlet/greenlet.c:1162:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1162 | Py_CLEAR(self->exc_state.exc_type);
| ^
/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/object.h:581:29: note: in expansion of macro ‘_PyObject_CAST’
581 | PyObject *_py_tmp = _PyObject_CAST(op); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1162:5: note: in expansion of macro ‘Py_CLEAR’
1162 | Py_CLEAR(self->exc_state.exc_type);
| ^~~~~~~~
In file included from /usr/include/python3.11/Python.h:44:
src/greenlet/greenlet.c:1162:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1162 | Py_CLEAR(self->exc_state.exc_type);
| ^
/usr/include/python3.11/object.h:583:14: note: in definition of macro ‘Py_CLEAR’
583 | (op) = NULL; \
| ^~
src/greenlet/greenlet.c:1164:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1164 | Py_CLEAR(self->exc_state.exc_traceback);
| ^
/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/object.h:581:29: note: in expansion of macro ‘_PyObject_CAST’
581 | PyObject *_py_tmp = _PyObject_CAST(op); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1164:5: note: in expansion of macro ‘Py_CLEAR’
1164 | Py_CLEAR(self->exc_state.exc_traceback);
| ^~~~~~~~
src/greenlet/greenlet.c:1164:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1164 | Py_CLEAR(self->exc_state.exc_traceback);
| ^
/usr/include/python3.11/object.h:583:14: note: in definition of macro ‘Py_CLEAR’
583 | (op) = NULL; \
| ^~
src/greenlet/greenlet.c: In function ‘green_dealloc’:
src/greenlet/greenlet.c:1256:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1256 | Py_CLEAR(self->exc_state.exc_type);
| ^
/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/object.h:581:29: note: in expansion of macro ‘_PyObject_CAST’
581 | PyObject *_py_tmp = _PyObject_CAST(op); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1256:5: note: in expansion of macro ‘Py_CLEAR’
1256 | Py_CLEAR(self->exc_state.exc_type);
| ^~~~~~~~
src/greenlet/greenlet.c:1256:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_type’
1256 | Py_CLEAR(self->exc_state.exc_type);
| ^
/usr/include/python3.11/object.h:583:14: note: in definition of macro ‘Py_CLEAR’
583 | (op) = NULL; \
| ^~
src/greenlet/greenlet.c:1258:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1258 | Py_CLEAR(self->exc_state.exc_traceback);
| ^
/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/object.h:581:29: note: in expansion of macro ‘_PyObject_CAST’
581 | PyObject *_py_tmp = _PyObject_CAST(op); \
| ^~~~~~~~~~~~~~
src/greenlet/greenlet.c:1258:5: note: in expansion of macro ‘Py_CLEAR’
1258 | Py_CLEAR(self->exc_state.exc_traceback);
| ^~~~~~~~
src/greenlet/greenlet.c:1258:29: error: ‘_PyErr_StackItem’ {aka ‘struct _err_stackitem’} has no member named ‘exc_traceback’
1258 | Py_CLEAR(self->exc_state.exc_traceback);
| ^
/usr/include/python3.11/object.h:583:14: note: in definition of macro ‘Py_CLEAR’
583 | (op) = NULL; \
| ^~
src/greenlet/greenlet.c: In function ‘PyGreenlet_New’:
src/greenlet/greenlet.c:1777:15: warning: assignment to ‘int *’ from incompatible pointer type ‘_PyCFrame *’ [-Wincompatible-pointer-types]
1777 | g->cframe = &PyThreadState_GET()->root_cframe;
| ^
error: command '/usr/lib64/ccache/gcc' failed with exit code 1
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
Rolling back uninstall of greenlet
Moving to /home/lemaire/.local/include/python3.11/greenlet/
from /home/lemaire/.local/include/python3.11/~reenlet
Moving to /home/lemaire/.local/lib/python3.11/site-packages/greenlet-2.0.0a2-py3.11.egg-info
from /home/lemaire/.local/lib/python3.11/site-packages/~reenlet-2.0.0a2-py3.11.egg-info
Moving to /home/lemaire/.local/lib/python3.11/site-packages/greenlet/
from /home/lemaire/.local/lib/python3.11/site-packages/~reenlet
error: legacy-install-failure
× Encountered error while trying to install package.
╰─> greenlet
note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.
Same issue here! God, why does Python suck so much...
Same issue here! God, why does Python suck so much...
You are right with that.
Just found this project and tried to fix this issue The reason this is failing (above error), is that the requirements.txt of this project fixes the greenlet lib to an old version. Greenlet seems to be fixed itself to support python3.11.
I tied to change the version to the current version - in time of writing this version (2.0.2). gdbgui seems to to work, at least in debugging mode.
greenlet==2.0.2
nox -s develop
There is an other thing if you try to build the program:
@nox.session(reuse_venv=True, python="3.11")
session.install(".", "PyInstaller==5.10.1")
nox -s build_executables_current_platform
It would be awesome to merge @Cherrg's PR. I'm just editable installing that fork right now for convenience's sake.
@cs01 wondering if you've had a chance to look?
Without the update of greenlet dependency, as done in mentioned PR, the gdbgui can not be compiled basically on every latest version of any distro. Just saying.
If you happen to have more than one version of python installed on your system you can install with pipx install --python [python-version(python3.9)] gdbgui
Its a nasty workaround but it'll get you up and running in the meantime
same here, python 3.11 is default in gentoo, would really appreciate if we could get a fix
Pinged the repository owner 5 months ago. Next step here is to fork if someone wants to pick up the torch.
I am so sorry everyone. I will take care of this as soon as I can. Hopefully within the next week. If I don’t fix it by then please ping me again.
Beyond this fix I also have a fork that is a significant rewrite. It’s about 80% done, and I am unfortunately probably not going to be able to complete it. I was going to wait to push the fork but I will share it in its current state in case anyone wants to try it or improve on it.
Beyond this fix I also have a fork that is a significant rewrite. It’s about 80% done, and I am unfortunately probably not going to be able to complete it. I was going to wait to push the fork but I will share it in its current state in case anyone wants to try it or improve on it.
@cs01 badass! Would love to see it. I don't know if anyone else is using / building tooling for embedded/microcontroller debugging (using a GDB client-server pair) but would love to collaborate.
@cs01 badass! Would love to see it. I don't know if anyone else is using / building tooling for embedded/microcontroller debugging (using a GDB client-server pair) but would love to collaborate.
That would be amazing. I will let you know when I push it.
Based on this issue it is apparent that I need to find a more sustainable way to maintain this project (after having a child I just can’t seem to find the time), so if you or anyone else is interested in maintaining it let me know.
pip install gdbgui
Not OK on Fedora38 with default python 3.11 also.
But, there is a fixed version on PyPi, installs and runs on Fedora38, python3.11 - fine:
pip install gdbgui-bugfix
gdbgui 0.15.2.0 has been released which has been tested to be compatible with python 3.12. Please let me know if it resolves your issues.
Describe the bug
Gdbgui is not compatible with Python 3.11 because it requires
greenlet==1.1.2
.See https://github.com/python-greenlet/greenlet/issues/295#issuecomment-1078891696 and https://github.com/python-greenlet/greenlet/pull/280.
To Reproduce Steps to reproduce the behavior:
Please complete the following information:
gdbgui -v
): 0.15.1.0gdb -v
):pip freeze
):Additional context