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

Can't install tools with Python 3.11 (IDFGH-8671) #10116

Closed
3 tasks done
persello opened this issue Nov 6, 2022 · 29 comments
Closed
3 tasks done

Can't install tools with Python 3.11 (IDFGH-8671) #10116

persello opened this issue Nov 6, 2022 · 29 comments
Assignees
Labels
Resolution: Done Issue is done internally Status: Done Issue is done internally Type: Bug bugs in IDF

Comments

@persello
Copy link

persello commented Nov 6, 2022

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.

IDF version.

v4.4.2

Operating System used.

Linux

How did you build your project?

Other (please specify in More Information)

If you are using Windows, please specify command line type.

No response

What is the expected behavior?

Following the instructions provided for installing ESP-IDF v4.4.2, I expect the tools to install successfully.

What is the actual behavior?

Installation of tools fails with an error stating that longintrepr.h could not be found.

Steps to reproduce.

sudo yum -y update && sudo yum install git wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-build ccache dfu-util libusbx
python3 --version # Shows version 3.11
mkdir esp
cd esp/
git clone -b v4.4.2 --recursive https://github.com/espressif/esp-idf.git
./esp-idf/install.sh esp32c3 # <~~ Error happens here

Build or installation Logs.

[riccardo@thinkpad-p51 esp]$ ./esp-idf/install.sh esp32c3
Detecting the Python interpreter
Checking "python" ...
Python 3.11.0
"python" has been detected
Installing ESP-IDF tools
Current system platform: linux-amd64
WARNING: File /home/riccardo/.espressif/idf-env.json was not found. 
Creating /home/riccardo/.espressif/idf-env.json
Selected targets are: esp32c3
Installing tools: riscv32-esp-elf, openocd-esp32
Installing riscv32-esp-elf@esp-2021r2-patch3-8.4.0
Downloading riscv32-esp-elf-gcc8_4_0-esp-2021r2-patch3-linux-amd64.tar.gz to /home/riccardo/.espressif/dist/riscv32-esp-elf-gcc8_4_0-esp-2021r2-patch3-linux-amd64.tar.gz.tmp
Done
Extracting /home/riccardo/.espressif/dist/riscv32-esp-elf-gcc8_4_0-esp-2021r2-patch3-linux-amd64.tar.gz to /home/riccardo/.espressif/tools/riscv32-esp-elf/esp-2021r2-patch3-8.4.0
Installing openocd-esp32@v0.11.0-esp32-20220411
Downloading openocd-esp32-linux-amd64-0.11.0-esp32-20220411.tar.gz to /home/riccardo/.espressif/dist/openocd-esp32-linux-amd64-0.11.0-esp32-20220411.tar.gz.tmp
Done
Extracting /home/riccardo/.espressif/dist/openocd-esp32-linux-amd64-0.11.0-esp32-20220411.tar.gz to /home/riccardo/.espressif/tools/openocd-esp32/v0.11.0-esp32-20220411
Installing Python environment and packages
pip 22.2.2 from /usr/lib/python3.11/site-packages/pip (python 3.11)
Creating a new Python environment in /home/riccardo/.espressif/python_env/idf4.4_py3.11_env
created virtual environment CPython3.11.0.final.0-64 in 2961ms
  creator CPython3Posix(dest=/home/riccardo/.espressif/python_env/idf4.4_py3.11_env, clear=False, no_vcs_ignore=False, global=False)
  seeder PipInvoke(download=False, pip=bundle, setuptools=bundle, wheel=bundle)
    added seed packages: pip==22.3, setuptools==65.5.0, wheel==0.37.1
  activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator
Installing Python packages from /home/riccardo/esp/esp-idf/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/riccardo/.espressif/python_env/idf4.4_py3.11_env/lib/python3.11/site-packages (from -r /home/riccardo/esp/esp-idf/requirements.txt (line 4)) (65.5.0)
Collecting click>=7.0
  Using cached https://dl.espressif.com/pypi/click/click-8.1.3-py3-none-any.whl (96 kB)
Collecting pyserial>=3.3
  Using cached https://dl.espressif.com/pypi/pyserial/pyserial-3.5-py2.py3-none-any.whl (90 kB)
Collecting future>=0.15.2
  Using cached https://dl.espressif.com/pypi/future/future-0.18.2-py3-none-any.whl (491 kB)
Collecting cryptography>=2.1.4
  Using cached https://dl.espressif.com/pypi/cryptography/cryptography-38.0.3-cp36-abi3-manylinux_2_28_x86_64.whl (4.2 MB)
Collecting pyparsing<2.4.0,>=2.0.3
  Using cached https://dl.espressif.com/pypi/pyparsing/pyparsing-2.3.1-py2.py3-none-any.whl (61 kB)
Collecting pyelftools>=0.22
  Using cached pyelftools-0.29-py2.py3-none-any.whl (174 kB)
Collecting idf-component-manager~=1.0
  Using cached https://dl.espressif.com/pypi/idf-component-manager/idf_component_manager-1.1.4-py3-none-any.whl (95 kB)
Collecting gdbgui==0.13.2.0
  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
  Using cached https://dl.espressif.com/pypi/pygdbmi/pygdbmi-0.9.0.2-py3-none-any.whl (16 kB)
Collecting python-socketio<5
  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
  Using cached https://dl.espressif.com/pypi/jinja2/Jinja2-3.0.3-py3-none-any.whl (133 kB)
Collecting itsdangerous<2.1
  Using cached https://dl.espressif.com/pypi/itsdangerous/itsdangerous-2.0.1-py3-none-any.whl (18 kB)
Collecting kconfiglib==13.7.1
  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
  Using cached https://dl.espressif.com/pypi/reedsolo/reedsolo-1.5.4-py3-none-any.whl (29 kB)
Collecting bitstring>=3.1.6
  Using cached https://dl.espressif.com/pypi/bitstring/bitstring-3.1.9-py3-none-any.whl (38 kB)
Collecting ecdsa>=0.16.0
  Using cached https://dl.espressif.com/pypi/ecdsa/ecdsa-0.18.0-py2.py3-none-any.whl (142 kB)
Collecting construct==2.10.54
  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
  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
  Using cached https://dl.espressif.com/pypi/flask-compress/Flask_Compress-1.13-py3-none-any.whl (7.9 kB)
Collecting Flask-SocketIO<3.0,>=2.9
  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
  Using cached gevent-1.5.0.tar.gz (5.3 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting Pygments<3.0,>=2.2.0
  Using cached https://dl.espressif.com/pypi/pygments/Pygments-2.13.0-py3-none-any.whl (1.1 MB)
Collecting cffi>=1.12
  Using cached cffi-1.15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (462 kB)
Collecting requests<3
  Using cached https://dl.espressif.com/pypi/requests/requests-2.28.1-py3-none-any.whl (62 kB)
Collecting requests-toolbelt
  Using cached https://dl.espressif.com/pypi/requests-toolbelt/requests_toolbelt-0.10.1-py2.py3-none-any.whl (54 kB)
Collecting schema
  Using cached https://dl.espressif.com/pypi/schema/schema-0.7.5-py2.py3-none-any.whl (17 kB)
Collecting six
  Using cached https://dl.espressif.com/pypi/six/six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting tqdm<5
  Using cached https://dl.espressif.com/pypi/tqdm/tqdm-4.64.1-py2.py3-none-any.whl (78 kB)
Collecting colorama
  Using cached https://dl.espressif.com/pypi/colorama/colorama-0.4.6-py2.py3-none-any.whl (25 kB)
Collecting pyyaml>5.2
  Using cached PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (757 kB)
Collecting contextlib2>0.6.0
  Using cached https://dl.espressif.com/pypi/contextlib2/contextlib2-21.6.0-py2.py3-none-any.whl (13 kB)
Collecting python-engineio<4,>=3.13.0
  Using cached https://dl.espressif.com/pypi/python-engineio/python_engineio-3.14.2-py2.py3-none-any.whl (51 kB)
Collecting MarkupSafe>=2.0
  Using cached MarkupSafe-2.1.1-py3-none-any.whl
Collecting pycparser
  Using cached https://dl.espressif.com/pypi/pycparser/pycparser-2.21-py2.py3-none-any.whl (118 kB)
Collecting Werkzeug<1.0,>=0.7
  Using cached https://dl.espressif.com/pypi/werkzeug/Werkzeug-0.16.1-py2.py3-none-any.whl (327 kB)
Collecting brotli
  Using cached Brotli-1.0.9-cp311-cp311-linux_x86_64.whl
Collecting greenlet>=0.4.14
  Using cached greenlet-2.0.0.post0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (541 kB)
Collecting charset-normalizer<3,>=2
  Using cached https://dl.espressif.com/pypi/charset-normalizer/charset_normalizer-2.1.1-py3-none-any.whl (39 kB)
Collecting idna<4,>=2.5
  Using cached https://dl.espressif.com/pypi/idna/idna-3.4-py3-none-any.whl (61 kB)
Collecting urllib3<1.27,>=1.21.1
  Using cached https://dl.espressif.com/pypi/urllib3/urllib3-1.26.12-py2.py3-none-any.whl (140 kB)
Collecting certifi>=2017.4.17
  Using cached https://dl.espressif.com/pypi/certifi/certifi-2022.9.24-py3-none-any.whl (161 kB)
Building wheels for collected packages: gevent
  Building wheel for gevent (pyproject.toml) ... error
  error: subprocess-exited-with-error
  
  × Building wheel for gevent (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [1824 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/gevent
      copying src/gevent/win32util.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/util.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/timeout.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/time.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/threadpool.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/threading.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/thread.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/subprocess.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/ssl.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/socket.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/signal.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/server.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/select.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/resolver_thread.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/resolver_ares.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/queue.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/pywsgi.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/pool.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/os.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/monkey.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/lock.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/local.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/hub.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/greenlet.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/fileobject.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/exceptions.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/events.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/event.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/core.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/contextvars.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/builtins.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/baseserver.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/backdoor.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/ares.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_waiter.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_util_py2.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_util.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_tracer.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_threading.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_tblib.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_sslgte279.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_ssl3.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_ssl2.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_socketcommon.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_socket3.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_socket2.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_semaphore.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_patcher.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_monitor.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_interfaces.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_imap.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_ident.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_hub_primitives.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_hub_local.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_greenlet_primitives.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_fileobjectposix.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_fileobjectcommon.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_config.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_compat.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/_abstract_linkable.py -> build/lib.linux-x86_64-cpython-311/gevent
      copying src/gevent/__init__.py -> build/lib.linux-x86_64-cpython-311/gevent
      creating build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__util.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__timeout.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__threadpool_executor_patched.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__threadpool.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__threading_vs_settrace.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__threading_patched_local.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__threading_native_before_monkey.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__threading_monkey_in_thread.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__threading_holding_lock_while_monkey.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__threading_before_monkey.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__threading_2.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__threading.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__systemerror.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__subprocess_poll.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__subprocess_interrupted.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__subprocess.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__ssl.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__socketpair.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__socket_timeout.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__socket_ssl.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__socket_send_memoryview.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__socket_ex.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__socket_errors.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__socket_dns6.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__socket_dns.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__socket_close.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__socket.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__sleep0.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__signal.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__server_pywsgi.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__server.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__semaphore.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__select.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__resolver_dnspython.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__refcount_core.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__refcount.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__real_greenlet.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__queue.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__pywsgi.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__pool.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__os.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__order.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__nondefaultloop.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_ssl_warning3.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_ssl_warning2.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_ssl_warning.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_sigchld_3.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_sigchld_2.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_sigchld.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_selectors.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_queue.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_multiple_imports.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_module_run.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_logging.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_hub_in_thread.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_futures_thread.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey_builtins_future.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__monkey.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__memleak.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__makefile_ref.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__loop_callback.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__local.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__joinall.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__iwait.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__issues461_471.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__issue_728.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__issue639.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__issue607.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__issue600.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__issue6.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__issue467.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__issue330.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__issue230.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__issue112.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__import_wait.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__import_blocking_in_greenlet.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__hub_join_timeout.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__hub_join.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__hub.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__greenness.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__greenletset.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__greenlet.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__greenio.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__getaddrinfo_import.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__fileobject.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__execmodules.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__exc_info.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__examples.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__example_wsgiserver_ssl.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__example_wsgiserver.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__example_webproxy.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__example_udp_server.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__example_udp_client.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__example_portforwarder.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__example_echoserver.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__events.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__event.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__environ.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__doctests.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__destroy_default_loop.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__destroy.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__core_watcher.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__core_timer.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__core_stat.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__core_loop_run.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__core_fork.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__core_callback.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__core_async.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__core.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__compat.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__close_backend_fd.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__backdoor.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__ares_timeout.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__ares_host_result.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__api_timeout.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__api.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__all__.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test___monkey_patching.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test___monitor.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test___ident.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test___config.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test__GreenletExit.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/lock_tests.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/known_failures.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/getaddrinfo_module.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/_imports_imports_at_top_level.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/_imports_at_top_level.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/_import_wait.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/_import_patch.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/_import_import_patch.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/_blocks_at_top_level.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/__main__.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/__init__.py -> build/lib.linux-x86_64-cpython-311/gevent/tests
      creating build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/util.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/travis.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/timing.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/testrunner.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/testcase.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/sysinfo.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/switching.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/support.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/sockets.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/skipping.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/six.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/resources.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/patched_tests_setup.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/params.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/openfiles.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/monkey_test.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/modules.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/leakcheck.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/hub.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/flaky.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/exception.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/errorhandler.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      copying src/gevent/testing/__init__.py -> build/lib.linux-x86_64-cpython-311/gevent/testing
      creating build/lib.linux-x86_64-cpython-311/gevent/resolver
      copying src/gevent/resolver/thread.py -> build/lib.linux-x86_64-cpython-311/gevent/resolver
      copying src/gevent/resolver/dnspython.py -> build/lib.linux-x86_64-cpython-311/gevent/resolver
      copying src/gevent/resolver/blocking.py -> build/lib.linux-x86_64-cpython-311/gevent/resolver
      copying src/gevent/resolver/ares.py -> build/lib.linux-x86_64-cpython-311/gevent/resolver
      copying src/gevent/resolver/_hostsfile.py -> build/lib.linux-x86_64-cpython-311/gevent/resolver
      copying src/gevent/resolver/_addresses.py -> build/lib.linux-x86_64-cpython-311/gevent/resolver
      copying src/gevent/resolver/__init__.py -> build/lib.linux-x86_64-cpython-311/gevent/resolver
      creating build/lib.linux-x86_64-cpython-311/gevent/libuv
      copying src/gevent/libuv/watcher.py -> build/lib.linux-x86_64-cpython-311/gevent/libuv
      copying src/gevent/libuv/loop.py -> build/lib.linux-x86_64-cpython-311/gevent/libuv
      copying src/gevent/libuv/_corecffi_build.py -> build/lib.linux-x86_64-cpython-311/gevent/libuv
      copying src/gevent/libuv/__init__.py -> build/lib.linux-x86_64-cpython-311/gevent/libuv
      creating build/lib.linux-x86_64-cpython-311/gevent/libev
      copying src/gevent/libev/watcher.py -> build/lib.linux-x86_64-cpython-311/gevent/libev
      copying src/gevent/libev/corecffi.py -> build/lib.linux-x86_64-cpython-311/gevent/libev
      copying src/gevent/libev/_corecffi_build.py -> build/lib.linux-x86_64-cpython-311/gevent/libev
      copying src/gevent/libev/__init__.py -> build/lib.linux-x86_64-cpython-311/gevent/libev
      creating build/lib.linux-x86_64-cpython-311/gevent/_ffi
      copying src/gevent/_ffi/watcher.py -> build/lib.linux-x86_64-cpython-311/gevent/_ffi
      copying src/gevent/_ffi/loop.py -> build/lib.linux-x86_64-cpython-311/gevent/_ffi
      copying src/gevent/_ffi/callback.py -> build/lib.linux-x86_64-cpython-311/gevent/_ffi
      copying src/gevent/_ffi/__init__.py -> build/lib.linux-x86_64-cpython-311/gevent/_ffi
      creating build/lib.linux-x86_64-cpython-311/gevent/tests/monkey_package
      copying src/gevent/tests/monkey_package/threadpool_no_monkey.py -> build/lib.linux-x86_64-cpython-311/gevent/tests/monkey_package
      copying src/gevent/tests/monkey_package/threadpool_monkey_patches.py -> build/lib.linux-x86_64-cpython-311/gevent/tests/monkey_package
      copying src/gevent/tests/monkey_package/script.py -> build/lib.linux-x86_64-cpython-311/gevent/tests/monkey_package
      copying src/gevent/tests/monkey_package/issue302monkey.py -> build/lib.linux-x86_64-cpython-311/gevent/tests/monkey_package
      copying src/gevent/tests/monkey_package/issue1526_with_monkey.py -> build/lib.linux-x86_64-cpython-311/gevent/tests/monkey_package
      copying src/gevent/tests/monkey_package/issue1526_no_monkey.py -> build/lib.linux-x86_64-cpython-311/gevent/tests/monkey_package
      copying src/gevent/tests/monkey_package/__main__.py -> build/lib.linux-x86_64-cpython-311/gevent/tests/monkey_package
      copying src/gevent/tests/monkey_package/__init__.py -> build/lib.linux-x86_64-cpython-311/gevent/tests/monkey_package
      copying src/gevent/tests/wrongcert.pem -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/sha256.pem -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/nullcert.pem -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/keycert.pem -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/https_svn_python_org_root.pem -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/badkey.pem -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/badcert.pem -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/2_7_keycert.pem -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test_server.crt -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/server.crt -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/tests_that_dont_use_resolver.txt -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/tests_that_dont_monkeypatch.txt -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/tests_that_dont_do_leakchecks.txt -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/hosts_file.txt -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/test_server.key -> build/lib.linux-x86_64-cpython-311/gevent/tests
      copying src/gevent/tests/server.key -> build/lib.linux-x86_64-cpython-311/gevent/tests
      creating build/lib.linux-x86_64-cpython-311/gevent/testing/coveragesite
      copying src/gevent/testing/coveragesite/sitecustomize.py -> build/lib.linux-x86_64-cpython-311/gevent/testing/coveragesite
      running build_ext
      generating cffi module 'build/temp.linux-x86_64-cpython-311/gevent.libuv._corecffi.c'
      creating build/temp.linux-x86_64-cpython-311
      Running '(cd  "/tmp/pip-install-776wkylk/gevent_b93dfe2760e5455d90dc74a01cb59044/deps/libev"  && sh ./configure -C > configure-output.txt )' in /tmp/pip-install-776wkylk/gevent_b93dfe2760e5455d90dc74a01cb59044
      generating cffi module 'build/temp.linux-x86_64-cpython-311/gevent.libev._corecffi.c'
      Not configuring libev, 'config.h' already exists
      Not configuring libev, 'config.h' already exists
      building 'gevent.libev.corecext' extension
      creating build/temp.linux-x86_64-cpython-311/src
      creating build/temp.linux-x86_64-cpython-311/src/gevent
      creating build/temp.linux-x86_64-cpython-311/src/gevent/libev
      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 -DLIBEV_EMBED=1 -DEV_COMMON= -DEV_CLEANUP_ENABLE=0 -DEV_EMBED_ENABLE=0 -DEV_PERIODIC_ENABLE=0 -Isrc/gevent/libev -I/usr/include/python3.11 -I/tmp/pip-install-776wkylk/gevent_b93dfe2760e5455d90dc74a01cb59044/deps -I/tmp/pip-install-776wkylk/gevent_b93dfe2760e5455d90dc74a01cb59044/src/gevent/libev -I/tmp/pip-install-776wkylk/gevent_b93dfe2760e5455d90dc74a01cb59044/deps/libev -Isrc/gevent -Isrc/gevent/libev -Isrc/gevent/resolver -I. -I/home/riccardo/.espressif/python_env/idf4.4_py3.11_env/include -I/usr/include/python3.11 -c src/gevent/libev/callbacks.c -o build/temp.linux-x86_64-cpython-311/src/gevent/libev/callbacks.o
      
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   CUT DUE TO CHARACTER LIMIT
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

      gcc -shared -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -g -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -g build/temp.linux-x86_64-cpython-311/deps/c-ares/ares__close_sockets.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares__get_hostent.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares__read_line.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares__timeval.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_android.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_cancel.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_create_query.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_data.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_destroy.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_expand_name.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_expand_string.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_fds.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_free_hostent.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_free_string.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_getenv.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_gethostbyaddr.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_gethostbyname.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_getnameinfo.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_getopt.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_getsock.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_init.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_library_init.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_llist.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_mkquery.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_nowarn.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_options.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_parse_a_reply.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_parse_aaaa_reply.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_parse_mx_reply.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_parse_naptr_reply.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_parse_ns_reply.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_parse_ptr_reply.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_parse_soa_reply.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_parse_srv_reply.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_parse_txt_reply.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_platform.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_process.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_query.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_search.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_send.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_strcasecmp.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_strdup.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_strerror.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_strsplit.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_timeout.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_version.o build/temp.linux-x86_64-cpython-311/deps/c-ares/ares_writev.o build/temp.linux-x86_64-cpython-311/deps/c-ares/bitncmp.o build/temp.linux-x86_64-cpython-311/deps/c-ares/inet_net_pton.o build/temp.linux-x86_64-cpython-311/deps/c-ares/inet_ntop.o build/temp.linux-x86_64-cpython-311/deps/c-ares/windows_port.o build/temp.linux-x86_64-cpython-311/src/gevent/resolver/cares.o -L/usr/lib64 -lrt -o build/lib.linux-x86_64-cpython-311/gevent/resolver/cares.cpython-311-x86_64-linux-gnu.so
      building 'gevent.__greenlet_primitives' extension
      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 -I/usr/include/python3.11 -I/tmp/pip-install-776wkylk/gevent_b93dfe2760e5455d90dc74a01cb59044/deps -Isrc/gevent -Isrc/gevent/libev -Isrc/gevent/resolver -I. -I/home/riccardo/.espressif/python_env/idf4.4_py3.11_env/include -I/usr/include/python3.11 -c src/gevent/_greenlet_primitives.c -o build/temp.linux-x86_64-cpython-311/src/gevent/_greenlet_primitives.o
      src/gevent/_greenlet_primitives.c:216:12: fatal error: longintrepr.h: No such file or directory
        216 |   #include "longintrepr.h"
            |            ^~~~~~~~~~~~~~~
      compilation terminated.
      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 gevent
Failed to build gevent
ERROR: Could not build wheels for gevent, which is required to install pyproject.toml-based projects
Traceback (most recent call last):
  File "/home/riccardo/esp/esp-idf/tools/idf_tools.py", line 1860, in <module>
    main(sys.argv[1:])
  File "/home/riccardo/esp/esp-idf/tools/idf_tools.py", line 1856, in main
    action_func(args)
  File "/home/riccardo/esp/esp-idf/tools/idf_tools.py", line 1577, in action_install_python_env
    subprocess.check_call(run_args, stdout=sys.stdout, stderr=sys.stderr, env=env_copy)
  File "/usr/lib64/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/home/riccardo/.espressif/python_env/idf4.4_py3.11_env/bin/python', '-m', 'pip', 'install', '--no-warn-script-location', '-r', '/home/riccardo/esp/esp-idf/requirements.txt', '--extra-index-url', 'https://dl.espressif.com/pypi']' returned non-zero exit status 1.

More Information.

Fedora Workstation 37

uname -a
Linux thinkpad-p51 6.0.5-300.fc37.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Oct 26 17:24:18 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

The issue seems to be related to old versions of gevent. New versions of gevent can be installed correctly.
Installing ESP-IDF from the master branch works as expected.

@persello persello added the Type: Bug bugs in IDF label Nov 6, 2022
@espressif-bot espressif-bot added the Status: Opened Issue is new label Nov 6, 2022
@github-actions github-actions bot changed the title Can't install tools with Python 3.11 Can't install tools with Python 3.11 (IDFGH-8671) Nov 6, 2022
@dobairoland
Copy link
Collaborator

This needs more investigation, but it looks like this is caused by an old Cython issue (cython/cython#4461) closed by a year ago. There are also a couple of 3.11 issues in the gevent tracker: https://github.com/gevent/gevent/issues?q=is%3Aissue+is%3Aclosed

We will try to build wheels of gevent for 3.11 which would solve this issue.

@KaeLL
Copy link
Contributor

KaeLL commented Nov 8, 2022

Fix ETA, workarounds besides using docker, anything?

@dobairoland
Copy link
Collaborator

I'm sorry I cannot give an ETA because the root cause is outside of our jurisdiction. The proper fix will come with your Linux distribution's package updates.

The workarounds are:

A workaround from our side will be to provide wheels but it is unknown to us right now how to fix those issues (there are others, the reported failure is just the first one which pops up).

BTW, what Linux distributions (and versions) are you using. Mine is a cutting edge rolling distribution and it still doesn't updated Python to 3.11.

@KaeLL
Copy link
Contributor

KaeLL commented Nov 9, 2022

Clear Linux. We got Python 3.11 on 27/Oct

@faulesocke
Copy link

You could also try upgrading to a newer gevent version. The error is reproducible with pip3 install 'gevent<2.0,>=1.2.2' but not with pip3 install gevent.

@KaeLL
Copy link
Contributor

KaeLL commented Nov 17, 2022

Already known, as master isn't affected. Also, since that's the most straightforward option, I assume @dobairoland must have good reasoning not to take it.

@faulesocke
Copy link

@dobairoland you mentioned the proper fix will come with my distro's packages. Can you briefly outline what needs to be done there? I can certainly do the required work.

@dobairoland
Copy link
Collaborator

@dobairoland you mentioned the proper fix will come with my distro's packages.

I realized later that gevent already provides wheels for Python 3.11. My mistake.

I'm sorry for the delay but the solution is harder than I thought. In order to lift the restriction on gevent, we need to lift it on gdbgui. And that needs the lifting of the restriction on pygdbmi which requires to backport fixes not just to ESP-IDF.

@elwerene
Copy link

I have the same problem since updating to Fedora 37.

@dobairoland
Copy link
Collaborator

Crosslinking cs01/gdbgui#447. Later we can revisit this issue and support gdbgui together with Python 3.11. For now it won't be supported.

The workaround will be merged soon and linked to this issue.

@espressif-bot espressif-bot added Resolution: NA Issue resolution is unavailable Status: Done Issue is done internally Resolution: Done Issue is done internally and removed Status: In Progress Work is in progress Resolution: NA Issue resolution is unavailable labels Nov 29, 2022
@KaeLL
Copy link
Contributor

KaeLL commented Nov 29, 2022

Any ETA on 4.4.4?

@dobairoland
Copy link
Collaborator

Any ETA on 4.4.4?

Testing should start next week, so maybe in 2-3 weeks depending on the number of found issues.

espressif-bot pushed a commit that referenced this issue Dec 4, 2022
espressif-bot pushed a commit that referenced this issue Dec 16, 2022
This is a follow-up of a816dfb with
additional check.

Related to #10116
espressif-bot pushed a commit that referenced this issue Dec 22, 2022
This is a follow-up of a816dfb with
additional check.

Related to #10116
@zevv
Copy link

zevv commented Feb 28, 2023

I hit this trying to build our idf 4.2 based software on latest Debian; from the above thread I was not able to deduce what the proper workaround for this is, apart from setting up a whole new old-debian-version-chroot for building. Is there a way around this?

@mcdavsco
Copy link

I hit this trying to build our idf 4.2 based software on latest Debian; from the above thread I was not able to deduce what the proper workaround for this is, apart from setting up a whole new old-debian-version-chroot for building. Is there a way around this?

On the v4.3 branch, I applied commit 3974be7 referenced above to allow the tools installation to complete. Then I can compile no problem on Fedora 37 which ships with Python 3.11.

You may be able to perform something similar for the v4.2 branch.

@zevv
Copy link

zevv commented Feb 28, 2023

Thank you @mcdavsco , that's helpful!

@dobairoland
Copy link
Collaborator

I'll try to backport the fix into the v4.3 and v4.2 branches.

@kutukvpavel
Copy link
Contributor

I'm running into this stuff after installing latest updates today on Debian 12 + VSCode extension (IDF v4.4.4).
First faced compilation failures and PEP668 consequences, then ultimately hit a wall with gevent wheels.
Tried reinstalling all the tools from scratch, and now extension's installer just gets stuck on "Installing Python virtual environment step", not doing anything:

bin/sh: 1: /home/paul/.espressif/python_env/idf4.4_py3.10_env/bin/python: not found
Command failed: "/home/paul/.espressif/python_env/idf4.4_py3.10_env/bin/python" -m pip install --upgrade --constraint "/home/paul/.vscode/extensions/espressif.esp-idf-extension-1.6.0/espidf.constraints.txt" --no-warn-script-location  -r "/home/paul/.vscode/extensions/espressif.esp-idf-extension-1.6.0/requirements.txt"
/bin/sh: 1: /home/paul/.espressif/python_env/idf4.4_py3.10_env/bin/python: not found

Where is this all coming from? Why is it trying to create 3.10 venv on a 3.11 system?

@zevv
Copy link

zevv commented Feb 28, 2023

Where is this all coming from? Why is it trying to create 3.10 venv on a 3.11 system?

I ran into a mess as well, I think part of it was related to what was already in my ~/.espressif. When I trow the whole dir away, install.sh runs clean until hitting the gevent issue.

@dobairoland
Copy link
Collaborator

Where is this all coming from? Why is it trying to create 3.10 venv on a 3.11 system?

I assume the update you run for the Debian updated Python from 3.10 and 3.11. Vscode works differently as the issue reported here. You will have run the Vscode setup again. The ESP-IDF installer won't help in this case. Please see the Vscode documentation.

@kutukvpavel
Copy link
Contributor

kutukvpavel commented Feb 28, 2023

Ok, I removed both ./espressif and esp-idf directories, uninstalled VSCode extension, and then tried to install everything from scratch again. Extension installer still stuck with the same console output. No python_env folder is even created. That's probably a separate extension-related bug.

However, I managed to get IDF's install.sh working somehow. Prior to launching it I tried to install python3-gevent package system-wide, and obviously succeeded. Don't know if it has something to do with the end result, though. Then I wired 3.11 venv folder to VSCode extension.

All in all, I think I introduced following changes:

  • Switched from IDF v4.4.3 to 4.4.4 during a clean reinstall
  • Installed gevent using APT (probably unrelated)
  • Found that VSCode extension has a separate setting pointing to the expected venv directory, and by default it expects python 3.10, while install.sh creates 3.11 one, of course... Duh. Changed 0 to 1 and now I can compile.

Also I am now confused about the meaning of that drop-down on the VSCode installer screen, that lets you choose python path (/usr/bin/python, /bin/python, etc). What does it change, if python is always invoked from a venv?

@madskjeldgaard
Copy link

I'm having the same issue on MacOS 13.0.1 (22A400) on Apple Silicon if it's any help.

@mykmelez
Copy link
Contributor

System Python is 3.9.6 on both my Apple Silicon Mac running macOS Monterey 12.6.3 and my Intel Mac running macOS Ventura 13.2.1. However, I did experience this issue after linking Homebrew Python 3.11 (brew link python). I worked around it by unlinking Homebrew Python (brew unlink python).

@nash-w
Copy link

nash-w commented Mar 20, 2023

Thanks @mykmelez, that helped me get around this issue!

@mikkeldamsgaard
Copy link

For me, I had to do these steps to make it work:

rm -rf ~/.espressif
brew link python@3.9
$IDF_PATH/install.sh

@kayasemih
Copy link

@madskjeldgaard Did you find any development? Have you been able to find anything new about the topic?

i am having the same problem after ./install.sh esp32 for esp-idf v4.4. I am getting such errors:
` src/gevent/_greenlet_primitives.c:216:12: fatal error: 'longintrepr.h' file not found
#include "longintrepr.h"
^~~~~~~~~~~~~~~
1 error generated.
error: command '/usr/bin/clang' 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 gevent
Failed to build gevent
ERROR: Could not build wheels for gevent, which is required to install pyproject.toml-based projects`

Although I deleted and reinstalled many times, I always had problems in the same place.

@dobairoland
Copy link
Collaborator

Please see the linked fixes in each release branch. If you are still experiencing this then you probably don't use the latest (bugfix) version of the release.

@pkkrusty
Copy link

pkkrusty commented Jun 8, 2023

Ran into this problem today on MacOS 12.6.1, where the install script chokes on gevent. Ran the command brew unlink python and script ran with no errors after falling back to system python of 3.9.6.

@mattjperez
Copy link

mattjperez commented Jun 13, 2023

Thanks @pkkrusty, this worked for me as well. MacOS Ventura 13.4

@hermlon
Copy link

hermlon commented Jun 16, 2023

Just if anyone runs into this issue like me: the fix hasn't been published on the stable release tagged with v4.4.2 etc yet, instead you have to checkout the release branches: git checkout release/v4.4. See how to switch to a release branch here: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/versions.html#updating-to-a-release-branch

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Resolution: Done Issue is done internally Status: Done Issue is done internally Type: Bug bugs in IDF
Projects
None yet
Development

No branches or pull requests