Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gevent<2.0,>=1.2.2 unable to be met in arm64 as of now (IDFGH-11075) #12249

Closed
3 tasks done
bill88t opened this issue Sep 14, 2023 · 1 comment
Closed
3 tasks done

gevent<2.0,>=1.2.2 unable to be met in arm64 as of now (IDFGH-11075) #12249

bill88t opened this issue Sep 14, 2023 · 1 comment
Labels
Resolution: Won't Do This will not be worked on Status: Done Issue is done internally

Comments

@bill88t
Copy link

bill88t commented Sep 14, 2023

Answers checklist.

  • I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
  • I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
  • I have searched the issue tracker for a similar issue and not found a similar issue.

General issue report

Cloning v4.4.3 and running ./install.sh in it per the instructions fails due to gevent not being able to be built.

This needs an upsteam bug to be filed too.

Detecting the Python interpreter
Checking "python" ...
Python 3.11.5
"python" has been detected
Installing ESP-IDF tools
Current system platform: linux-arm64
Selected targets are: esp32s3, esp32c3, esp32s2, esp32h2, esp32
Installing tools: xtensa-esp32-elf, xtensa-esp32s2-elf, xtensa-esp32s3-elf, riscv32-esp-elf, esp32ulp-elf, openocd-esp32
Skipping xtensa-esp32-elf@esp-2021r2-patch5-8.4.0 (already installed)
Skipping xtensa-esp32s2-elf@esp-2021r2-patch5-8.4.0 (already installed)
Skipping xtensa-esp32s3-elf@esp-2021r2-patch5-8.4.0 (already installed)
Skipping riscv32-esp-elf@esp-2021r2-patch5-8.4.0 (already installed)
Skipping esp32ulp-elf@2.35_20220830 (already installed)
Skipping openocd-esp32@v0.11.0-esp32-20220706 (already installed)
Installing Python environment and packages
Python 3.11.5
pip 23.2.1 from /home/bill88t/.espressif/python_env/idf4.4_py3.11_env/lib/python3.11/site-packages/pip (python 3.11)
Installing Python packages from /home/bill88t/git/esp-idf-v4.4.5/requirements.txt
Looking in indexes: https://pypi.org/simple, https://dl.espressif.com/pypi
Ignoring None: markers 'sys_platform == "win32"' don't match your environment
Requirement already satisfied: setuptools>=21 in /home/bill88t/.espressif/python_env/idf4.4_py3.11_env/lib/python3.11/site-packages (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 4)) (68.1.2)
Collecting click>=7.0 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 8))
  Obtaining dependency information for click>=7.0 from https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl.metadata
  Using cached click-8.1.7-py3-none-any.whl.metadata (3.0 kB)
Collecting pyserial>=3.3 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 9))
  Using cached https://dl.espressif.com/pypi/pyserial/pyserial-3.5-py2.py3-none-any.whl (90 kB)
Collecting future>=0.15.2 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 10))
  Using cached https://dl.espressif.com/pypi/future/future-0.18.3-py3-none-any.whl (492 kB)
Collecting cryptography>=2.1.4 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 12))
  Obtaining dependency information for cryptography>=2.1.4 from https://files.pythonhosted.org/packages/7d/43/587996ab411ca9cc7b75927856783f1791390d57ab7dc5f2c24df61e3f9a/cryptography-41.0.3-cp37-abi3-manylinux_2_28_aarch64.whl.metadata
  Using cached cryptography-41.0.3-cp37-abi3-manylinux_2_28_aarch64.whl.metadata (5.2 kB)
Collecting pyparsing<2.4.0,>=2.0.3 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 18))
  Using cached https://dl.espressif.com/pypi/pyparsing/pyparsing-2.3.1-py2.py3-none-any.whl (61 kB)
Collecting pyelftools>=0.22 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 19))
  Obtaining dependency information for pyelftools>=0.22 from https://files.pythonhosted.org/packages/33/f9/281a411a5281b674b10830a2f312c64464b49916d097b8919f009de579e0/pyelftools-0.30-py2.py3-none-any.whl.metadata
  Using cached pyelftools-0.30-py2.py3-none-any.whl.metadata (381 bytes)
Collecting idf-component-manager~=1.0 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 20))
  Using cached https://dl.espressif.com/pypi/idf-component-manager/idf_component_manager-1.3.2-py3-none-any.whl (134 kB)
Collecting gdbgui==0.13.2.0 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 22))
  Using cached https://dl.espressif.com/pypi/gdbgui/gdbgui-0.13.2.0-py3-none-any.whl (878 kB)
Collecting pygdbmi<=0.9.0.2 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 25))
  Using cached https://dl.espressif.com/pypi/pygdbmi/pygdbmi-0.9.0.2-py3-none-any.whl (16 kB)
Collecting python-socketio<5 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 28))
  Using cached https://dl.espressif.com/pypi/python-socketio/python_socketio-4.6.1-py2.py3-none-any.whl (51 kB)
Collecting jinja2<3.1 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 29))
  Using cached https://dl.espressif.com/pypi/jinja2/Jinja2-3.0.3-py3-none-any.whl (133 kB)
Collecting itsdangerous<2.1 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 30))
  Using cached https://dl.espressif.com/pypi/itsdangerous/itsdangerous-2.0.1-py3-none-any.whl (18 kB)
Collecting kconfiglib==13.7.1 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 32))
  Using cached https://dl.espressif.com/pypi/kconfiglib/kconfiglib-13.7.1-py2.py3-none-any.whl (145 kB)
Collecting reedsolo<=1.5.4,>=1.5.3 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 35))
  Using cached https://dl.espressif.com/pypi/reedsolo/reedsolo-1.5.4-py3-none-any.whl (28 kB)
Collecting bitstring>=3.1.6 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 36))
  Using cached https://dl.espressif.com/pypi/bitstring/bitstring-4.1.2-py3-none-any.whl (59 kB)
Collecting ecdsa>=0.16.0 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 37))
  Using cached https://dl.espressif.com/pypi/ecdsa/ecdsa-0.18.0-py2.py3-none-any.whl (142 kB)
Collecting construct==2.10.54 (from -r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 41))
  Using cached https://dl.espressif.com/pypi/construct/construct-2.10.54-py3-none-any.whl (57 kB)
Collecting Flask<1.0,>=0.12.2 (from gdbgui==0.13.2.0->-r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 22))
  Using cached https://dl.espressif.com/pypi/flask/Flask-0.12.5-py2.py3-none-any.whl (81 kB)
Collecting Flask-Compress<2.0,>=1.4.0 (from gdbgui==0.13.2.0->-r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 22))
  Using cached https://dl.espressif.com/pypi/flask-compress/Flask_Compress-1.14-py3-none-any.whl (8.4 kB)
Collecting Flask-SocketIO<3.0,>=2.9 (from gdbgui==0.13.2.0->-r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 22))
  Using cached https://dl.espressif.com/pypi/flask-socketio/Flask_SocketIO-2.9.6-py2.py3-none-any.whl (16 kB)
Collecting gevent<2.0,>=1.2.2 (from gdbgui==0.13.2.0->-r /home/bill88t/git/esp-idf-v4.4.5/requirements.txt (line 22))
  Using cached gevent-1.5.0.tar.gz (5.3 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error
  
  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [322 lines of output]
      warning: src/gevent/resolver/cares.pyx:32:0: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
      warning: src/gevent/resolver/cares.pyx:33:0: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
      Compiling src/gevent/resolver/cares.pyx because it changed.
      [1/1] Cythonizing src/gevent/resolver/cares.pyx
      warning: src/gevent/libev/corecext.pyx:325:0: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
      warning: src/gevent/libev/corecext.pyx:778:0: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
      warning: src/gevent/libev/corecext.pyx:780:0: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
      warning: src/gevent/libev/corecext.pyx:782:0: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
      warning: src/gevent/libev/corecext.pyx:786:0: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
      warning: src/gevent/libev/corecext.pyx:1288:0: Global name __SYSERR_CALLBACK matched from within class scope in contradiction to to Python 'class private name' rules. This may change in a future release.
      warning: src/gevent/libev/corecext.pyx:1288:0: Global name __SYSERR_CALLBACK matched from within class scope in contradiction to to Python 'class private name' rules. This may change in a future release.
      warning: src/gevent/libev/corecext.pyx:1288:0: Global name __SYSERR_CALLBACK matched from within class scope in contradiction to to Python 'class private name' rules. This may change in a future release.
      warning: src/gevent/libev/corecext.pyx:1288:0: Global name __SYSERR_CALLBACK matched from within class scope in contradiction to to Python 'class private name' rules. This may change in a future release.
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
              if events & ~(libev.EV__IOFDSET | libev.EV_READ | libev.EV_WRITE):
                  raise ValueError('illegal event mask: %r' % events)
              # All the vfd_functions are no-ops on POSIX
              cdef int vfd = libev.vfd_open(fd)
              libev.ev_io_init(&self._watcher, <void *>gevent_callback_io, vfd, events)
              self.__watcher = <libev.ev_watcher*>&self._watcher
                               ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1027:25: Cannot convert 'ev_watcher *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
                  raise ValueError('illegal event mask: %r' % events)
              # All the vfd_functions are no-ops on POSIX
              cdef int vfd = libev.vfd_open(fd)
              libev.ev_io_init(&self._watcher, <void *>gevent_callback_io, vfd, events)
              self.__watcher = <libev.ev_watcher*>&self._watcher
              self.__ss = &io_ss
                          ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1028:20: Cannot convert 'start_and_stop *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
      
          def __cinit__(self, loop loop, double after=0.0, double repeat=0.0, ref=True, priority=None):
              if repeat < 0.0:
                  raise ValueError("repeat must be positive or zero: %r" % repeat)
              libev.ev_timer_init(&self._watcher, <void *>gevent_callback_timer, after, repeat)
              self.__watcher = <libev.ev_watcher*>&self._watcher
                               ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1072:25: Cannot convert 'ev_watcher *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
          def __cinit__(self, loop loop, double after=0.0, double repeat=0.0, ref=True, priority=None):
              if repeat < 0.0:
                  raise ValueError("repeat must be positive or zero: %r" % repeat)
              libev.ev_timer_init(&self._watcher, <void *>gevent_callback_timer, after, repeat)
              self.__watcher = <libev.ev_watcher*>&self._watcher
              self.__ss = &timer_ss
                          ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1073:20: Cannot convert 'start_and_stop *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
              # 1) "libev: ev_signal_start called with illegal signal number"
              #    EV_NSIG might be different from signal.NSIG on some platforms
              # 2) "libev: a signal must not be attached to two different loops"
              #    we probably could check that in LIBEV_EMBED mode, but not in general
              libev.ev_signal_init(&self._watcher, <void *>gevent_callback_signal, signalnum)
              self.__watcher = <libev.ev_watcher*>&self._watcher
                               ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1117:25: Cannot convert 'ev_watcher *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
              #    EV_NSIG might be different from signal.NSIG on some platforms
              # 2) "libev: a signal must not be attached to two different loops"
              #    we probably could check that in LIBEV_EMBED mode, but not in general
              libev.ev_signal_init(&self._watcher, <void *>gevent_callback_signal, signalnum)
              self.__watcher = <libev.ev_watcher*>&self._watcher
              self.__ss = &signal_ss
                          ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1118:20: Cannot convert 'start_and_stop *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
      
          cdef libev.ev_idle _watcher
      
          def __cinit__(self, loop loop, ref=True, priority=None):
              libev.ev_idle_init(&self._watcher, <void*>gevent_callback_idle)
              self.__watcher = <libev.ev_watcher*>&self._watcher
                               ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1133:25: Cannot convert 'ev_watcher *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
          cdef libev.ev_idle _watcher
      
          def __cinit__(self, loop loop, ref=True, priority=None):
              libev.ev_idle_init(&self._watcher, <void*>gevent_callback_idle)
              self.__watcher = <libev.ev_watcher*>&self._watcher
              self.__ss = &idle_ss
                          ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1134:20: Cannot convert 'start_and_stop *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
      
          cdef libev.ev_prepare _watcher
      
          def __cinit__(self, loop loop, ref=True, priority=None):
              libev.ev_prepare_init(&self._watcher, <void*>gevent_callback_prepare)
              self.__watcher = <libev.ev_watcher*>&self._watcher
                               ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1146:25: Cannot convert 'ev_watcher *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
          cdef libev.ev_prepare _watcher
      
          def __cinit__(self, loop loop, ref=True, priority=None):
              libev.ev_prepare_init(&self._watcher, <void*>gevent_callback_prepare)
              self.__watcher = <libev.ev_watcher*>&self._watcher
              self.__ss = &prepare_ss
                          ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1147:20: Cannot convert 'start_and_stop *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
      
          cdef libev.ev_check _watcher
      
          def __cinit__(self, loop loop, ref=True, priority=None):
              libev.ev_check_init(&self._watcher, <void*>gevent_callback_check)
              self.__watcher = <libev.ev_watcher*>&self._watcher
                               ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1159:25: Cannot convert 'ev_watcher *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
          cdef libev.ev_check _watcher
      
          def __cinit__(self, loop loop, ref=True, priority=None):
              libev.ev_check_init(&self._watcher, <void*>gevent_callback_check)
              self.__watcher = <libev.ev_watcher*>&self._watcher
              self.__ss = &check_ss
                          ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1160:20: Cannot convert 'start_and_stop *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
      
          cdef libev.ev_fork _watcher
      
          def __cinit__(self, loop loop, ref=True, priority=None):
              libev.ev_fork_init(&self._watcher, <void*>gevent_callback_fork)
              self.__watcher = <libev.ev_watcher*>&self._watcher
                               ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1172:25: Cannot convert 'ev_watcher *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
          cdef libev.ev_fork _watcher
      
          def __cinit__(self, loop loop, ref=True, priority=None):
              libev.ev_fork_init(&self._watcher, <void*>gevent_callback_fork)
              self.__watcher = <libev.ev_watcher*>&self._watcher
              self.__ss = &fork_ss
                          ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1173:20: Cannot convert 'start_and_stop *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
              # Note the use of ev_async_pending instead of ev_is_pending
              return True if libev.ev_async_pending(&self._watcher) else False
      
          def __cinit__(self, loop loop, ref=True, priority=None):
              libev.ev_async_init(&self._watcher, <void*>gevent_callback_async)
              self.__watcher = <libev.ev_watcher*>&self._watcher
                               ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1189:25: Cannot convert 'ev_watcher *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
              return True if libev.ev_async_pending(&self._watcher) else False
      
          def __cinit__(self, loop loop, ref=True, priority=None):
              libev.ev_async_init(&self._watcher, <void*>gevent_callback_async)
              self.__watcher = <libev.ev_watcher*>&self._watcher
              self.__ss = &async_ss
                          ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1190:20: Cannot convert 'start_and_stop *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
                  raise AttributeError("Child watchers are not supported on Windows")
              if not loop.default:
                  raise TypeError('child watchers are only available on the default loop')
              libev.gevent_install_sigchld_handler()
              libev.ev_child_init(&self._watcher, <void *>gevent_callback_child, pid, trace)
              self.__watcher = <libev.ev_watcher*>&self._watcher
                               ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1212:25: Cannot convert 'ev_watcher *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
              if not loop.default:
                  raise TypeError('child watchers are only available on the default loop')
              libev.gevent_install_sigchld_handler()
              libev.ev_child_init(&self._watcher, <void *>gevent_callback_child, pid, trace)
              self.__watcher = <libev.ev_watcher*>&self._watcher
              self.__ss = &child_ss
                          ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1213:20: Cannot convert 'start_and_stop *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
                  self._paths = paths
              else:
                  paths = <bytes>path
                  self._paths = paths
              libev.ev_stat_init(&self._watcher, <void *>gevent_callback_stat, <char*>paths, interval)
              self.__watcher = <libev.ev_watcher*>&self._watcher
                               ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1263:25: Cannot convert 'ev_watcher *' to Python object
      
      Error compiling Cython file:
      ------------------------------------------------------------
      ...
              else:
                  paths = <bytes>path
                  self._paths = paths
              libev.ev_stat_init(&self._watcher, <void *>gevent_callback_stat, <char*>paths, interval)
              self.__watcher = <libev.ev_watcher*>&self._watcher
              self.__ss = &stat_ss
                          ^
      ------------------------------------------------------------
      
      src/gevent/libev/corecext.pyx:1264:20: Cannot convert 'start_and_stop *' to Python object
      Compiling src/gevent/libev/corecext.pyx because it changed.
      [1/1] Cythonizing src/gevent/libev/corecext.pyx
      Traceback (most recent call last):
        File "/home/bill88t/.espressif/python_env/idf4.4_py3.11_env/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/home/bill88t/.espressif/python_env/idf4.4_py3.11_env/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/home/bill88t/.espressif/python_env/idf4.4_py3.11_env/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
                 ^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-g3yu8w9i/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 355, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=['wheel'])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-g3yu8w9i/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 325, in _get_build_requires
          self.run_setup()
        File "/tmp/pip-build-env-g3yu8w9i/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 507, in run_setup
          super(_BuildMetaLegacyBackend, self).run_setup(setup_script=setup_script)
        File "/tmp/pip-build-env-g3yu8w9i/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 341, in run_setup
          exec(code, locals())
        File "<string>", line 49, in <module>
        File "/tmp/pip-install-ccx4wy_i/gevent_ec5e7b9a455447d19adc1b0a7727a3ab/_setuputils.py", line 254, in cythonize1
          new_ext = cythonize(
                    ^^^^^^^^^^
        File "/tmp/pip-build-env-g3yu8w9i/overlay/lib/python3.11/site-packages/Cython/Build/Dependencies.py", line 1134, in cythonize
          cythonize_one(*args)
        File "/tmp/pip-build-env-g3yu8w9i/overlay/lib/python3.11/site-packages/Cython/Build/Dependencies.py", line 1301, in cythonize_one
          raise CompileError(None, pyx_file)
      Cython.Compiler.Errors.CompileError: src/gevent/libev/corecext.pyx
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.
Traceback (most recent call last):
  File "/home/bill88t/git/esp-idf-v4.4.5/tools/idf_tools.py", line 1970, in <module>
    main(sys.argv[1:])
  File "/home/bill88t/git/esp-idf-v4.4.5/tools/idf_tools.py", line 1966, in main
    action_func(args)
  File "/home/bill88t/git/esp-idf-v4.4.5/tools/idf_tools.py", line 1616, in action_install_python_env
    subprocess.check_call(run_args, stdout=sys.stdout, stderr=sys.stderr, env=env_copy)
  File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/home/bill88t/.espressif/python_env/idf4.4_py3.11_env/bin/python', '-m', 'pip', 'install', '--no-warn-script-location', '-r', '/home/bill88t/git/esp-idf-v4.4.5/requirements.txt', '--extra-index-url', 'https://dl.espressif.com/pypi']' returned non-zero exit status 1.
@github-actions github-actions bot changed the title gevent<2.0,>=1.2.2 unable to be met in arm64 as of now gevent<2.0,>=1.2.2 unable to be met in arm64 as of now (IDFGH-11075) Sep 14, 2023
@espressif-bot espressif-bot added the Status: Opened Issue is new label Sep 14, 2023
@dobairoland
Copy link
Collaborator

The workaround for Python 3.11 was added into the release branch in 3974be7.

For that to be available, you need at least the v4.4.4 bugfix release. But we recommend the latest bugfix version in every case. That is v4.4.5 at this moment.

@espressif-bot espressif-bot added Status: Done Issue is done internally Resolution: Won't Do This will not be worked on and removed Status: Opened Issue is new labels Sep 18, 2023
mingqian added a commit to mingqian/esp-hosted that referenced this issue Nov 21, 2023
The custom repo contains fix for gevent wheel build error during
installation, similar to:
espressif/esp-idf#12249
and the fix:
espressif/esp-idf@3974be7
mingqian added a commit to mingqian/esp-idf that referenced this issue Nov 21, 2023
The issue is similar to:
gevent<2.0,>=1.2.2 unable to be met in arm64 as of now (IDFGH-11075) espressif#12249
espressif#12249

and the workaround is copied from:
espressif@3974be7
mingqian added a commit to mingqian/esp-hosted that referenced this issue Nov 21, 2023
The custom repo contains a workaround for gevent wheel build error during
installation, similar to:
espressif/esp-idf#12249
and the workaround:
espressif/esp-idf@3974be7
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Resolution: Won't Do This will not be worked on Status: Done Issue is done internally
Projects
None yet
Development

No branches or pull requests

3 participants