Repository navigation
support of python3.13 --disable-gil #345
Copy link
Copy link
Open
Description
I can install gssapi in python 3.13b3 with success but not with python 3.13b3 --disable-gil
Env
CONFIGURE_OPTS=--disable-gil pyenv install 3.13.0b3
GCC 12.2.0
decorator 5.1.1
Error
Processing .../python-gssapi
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Collecting decorator (from gssapi==1.8.4)
Using cached decorator-5.1.1-py3-none-any.whl.metadata (4.0 kB)
Using cached decorator-5.1.1-py3-none-any.whl (9.1 kB)
Building wheels for collected packages: gssapi
Building wheel for gssapi (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for gssapi (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [94 lines of output]
running bdist_wheel
running build
running build_py
copying gssapi/_win_config.py -> build/lib.linux-x86_64-cpython-313t/gssapi
copying gssapi/creds.py -> build/lib.linux-x86_64-cpython-313t/gssapi
copying gssapi/__init__.py -> build/lib.linux-x86_64-cpython-313t/gssapi
copying gssapi/mechs.py -> build/lib.linux-x86_64-cpython-313t/gssapi
copying gssapi/_utils.py -> build/lib.linux-x86_64-cpython-313t/gssapi
copying gssapi/exceptions.py -> build/lib.linux-x86_64-cpython-313t/gssapi
copying gssapi/sec_contexts.py -> build/lib.linux-x86_64-cpython-313t/gssapi
copying gssapi/names.py -> build/lib.linux-x86_64-cpython-313t/gssapi
copying gssapi/raw/__init__.py -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/named_tuples.py -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/_enum_extensions/__init__.py -> build/lib.linux-x86_64-cpython-313t/gssapi/raw/_enum_extensions
copying gssapi/tests/test_raw.py -> build/lib.linux-x86_64-cpython-313t/gssapi/tests
copying gssapi/tests/__init__.py -> build/lib.linux-x86_64-cpython-313t/gssapi/tests
copying gssapi/tests/test_high_level.py -> build/lib.linux-x86_64-cpython-313t/gssapi/tests
copying gssapi/py.typed -> build/lib.linux-x86_64-cpython-313t/gssapi
copying gssapi/raw/ext_rfc5801.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_krb5.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/creds.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/mech_krb5.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_set_cred_opt.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/message.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_rfc4178.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/chan_bindings.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/sec_contexts.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/exceptions.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_iov_mic.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_rfc5587.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/misc.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_rfc5588.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_rfc6680_comp_oid.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_ggf.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/names.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/types.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/oids.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_dce_aead.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_cred_imp_exp.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_dce.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_rfc6680.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_password_add.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_password.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_cred_store.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
copying gssapi/raw/ext_s4u.pyi -> build/lib.linux-x86_64-cpython-313t/gssapi/raw
running build_ext
building 'gssapi.raw.misc' extension
gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O3 -Wall -fPIC -Igssapi/raw -I/home/elrik/Info/python-gssapi/venv/include -I/home/elrik/.pyenv/versions/3.13.0b3/include/python3.13t -c gssapi/raw/misc.c -o build/temp.linux-x86_64-cpython-313t/gssapi/raw/misc.o -isystem /usr/include/mit-krb5 -DHAS_GSSAPI_EXT_H
gssapi/raw/misc.c:2107:80: error: unknown type name ‘__pyx_vectorcallfunc’; did you mean ‘vectorcallfunc’?
2107 | static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw);
| ^~~~~~~~~~~~~~~~~~~~
| vectorcallfunc
gssapi/raw/misc.c: In function ‘__pyx_pw_6gssapi_3raw_4misc_16GSSErrorRegistry_7__call__’:
gssapi/raw/misc.c:5551:43: warning: passing argument 1 of ‘PyTuple_GetSlice’ from incompatible pointer type [-Wincompatible-pointer-types]
5551 | __pyx_v_args = __Pyx_ArgsSlice_FASTCALL(__pyx_args, 3, __pyx_nargs);
| ^~~~~~~~~~
| |
| PyObject * const* {aka struct _object * const*}
gssapi/raw/misc.c:1790:70: note: in definition of macro ‘__Pyx_ArgsSlice_FASTCALL’
1790 | #define __Pyx_ArgsSlice_FASTCALL(args, start, stop) PyTuple_GetSlice(args, start, stop)
| ^~~~
In file included from /home/elrik/.pyenv/versions/3.13.0b3/include/python3.13t/Python.h:84,
from gssapi/raw/misc.c:51:
/home/elrik/.pyenv/versions/3.13.0b3/include/python3.13t/tupleobject.h:34:41: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘PyObject * const*’ {aka ‘struct _object * const*’}
34 | PyAPI_FUNC(PyObject *) PyTuple_GetSlice(PyObject *, Py_ssize_t, Py_ssize_t);
| ^~~~~~~~~~
gssapi/raw/misc.c: At top level:
gssapi/raw/misc.c:10741:69: error: unknown type name ‘__pyx_vectorcallfunc’; did you mean ‘vectorcallfunc’?
10741 | static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw)
| ^~~~~~~~~~~~~~~~~~~~
| vectorcallfunc
gssapi/raw/misc.c:10786:80: error: unknown type name ‘__pyx_vectorcallfunc’; did you mean ‘vectorcallfunc’?
10786 | static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *const *args, size_t nargs, PyObject *kw)
| ^~~~~~~~~~~~~~~~~~~~
| vectorcallfunc
gssapi/raw/misc.c: In function ‘__Pyx_CyFunction_CallAsMethod’:
gssapi/raw/misc.c:11475:6: error: unknown type name ‘__pyx_vectorcallfunc’; did you mean ‘vectorcallfunc’?
11475 | __pyx_vectorcallfunc vc = __Pyx_CyFunction_func_vectorcall(cyfunc);
| ^~~~~~~~~~~~~~~~~~~~
| vectorcallfunc
gssapi/raw/misc.c:2197:45: warning: initialization of ‘int’ from ‘vectorcallfunc’ {aka ‘struct _object * (*)(struct _object *, struct _object * const*, long unsigned int, struct _object *)’} makes integer from pointer without a cast [-Wint-conversion]
2197 | #define __Pyx_CyFunction_func_vectorcall(f) (((PyCFunctionObject*)f)->vectorcall)
| ^
gssapi/raw/misc.c:11475:32: note: in expansion of macro ‘__Pyx_CyFunction_func_vectorcall’
11475 | __pyx_vectorcallfunc vc = __Pyx_CyFunction_func_vectorcall(cyfunc);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gssapi/raw/misc.c:11478:16: warning: implicit declaration of function ‘__Pyx_PyVectorcall_FastCallDict’; did you mean ‘__Pyx_PyObject_FastCallDict’? [-Wimplicit-function-declaration]
11478 | return __Pyx_PyVectorcall_FastCallDict(func, vc, &PyTuple_GET_ITEM(args, 0), (size_t)PyTuple_GET_SIZE(args), kw);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __Pyx_PyObject_FastCallDict
gssapi/raw/misc.c:11478:16: warning: returning ‘int’ from a function with return type ‘PyObject *’ {aka ‘struct _object *’} makes pointer from integer without a cast [-Wint-conversion]
11478 | return __Pyx_PyVectorcall_FastCallDict(func, vc, &PyTuple_GET_ITEM(args, 0), (size_t)PyTuple_GET_SIZE(args), kw);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
error: command '/usr/bin/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 gssapiReactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
jborean93 commentedon Jul 20, 2024
I'm not sure if Cython can generate code compatible with PEP 703, we are dependent on that generating the correct C code needed here to compile in this mode. I think cython/cython#6162 might be the overarching issue covering that but I could be wrong.
nitzmahone commentedon Sep 6, 2024
I had exactly the same errors about
__pyx_vectorcallfuncbuilding PyYAML's libyaml extension under 3.13t- definingCYTHON_VECTORCALL(which just aliases to the builtinvectorcallfunc) worked for me viaCFLAGS='-DCYTHON_VECTORCALL'orextra_compile_argsor whatever- dealer's choice.