I am trying to install eth-brownie to follow the Patrick Collins Solidity Course however I can't get past this error I have been googling for a few days.

This is the error:

note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for yarl
Failed to build yarl
ERROR: Could not build wheels for yarl, which is required to install pyproject.toml-based projects

This is the full report:

Collecting eth-brownie
  Using cached eth_brownie-1.19.2-py3-none-any.whl (232 kB)
Requirement already satisfied: aiohttp==3.8.3 in c:\python311\lib\site-packages (from eth-brownie) (3.8.3)
Collecting aiosignal==1.2.0
  Using cached aiosignal-1.2.0-py3-none-any.whl (8.2 kB)
Collecting asttokens==2.0.5
  Using cached asttokens-2.0.5-py2.py3-none-any.whl (20 kB)
Requirement already satisfied: async-timeout==4.0.2 in c:\python311\lib\site-packages (from eth-brownie) (4.0.2)
Collecting attrs==22.1.0
  Using cached attrs-22.1.0-py2.py3-none-any.whl (58 kB)
Requirement already satisfied: base58==2.1.1 in c:\python311\lib\site-packages (from eth-brownie) (2.1.1)
Collecting bitarray==2.6.0
  Using cached bitarray-2.6.0.tar.gz (102 kB)
  Preparing metadata (setup.py) ... done
Collecting black==22.10.0
  Using cached black-22.10.0-cp311-cp311-win_amd64.whl (1.2 MB)
Collecting certifi==2022.9.24
  Using cached certifi-2022.9.24-py3-none-any.whl (161 kB)
Requirement already satisfied: charset-normalizer==2.1.1 in c:\python311\lib\site-packages (from eth-brownie) (2.1.1)
Requirement already satisfied: click==8.1.3 in c:\python311\lib\site-packages (from eth-brownie) (8.1.3)
Collecting cytoolz==0.12.0
  Using cached cytoolz-0.12.0.tar.gz (502 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting dataclassy==0.11.1
  Using cached dataclassy-0.11.1-py3-none-any.whl (23 kB)
Collecting eip712==0.1.0
  Using cached eip712-0.1.0-py3-none-any.whl (13 kB)
Requirement already satisfied: eth-abi==2.2.0 in c:\python311\lib\site-packages (from eth-brownie) (2.2.0)
Requirement already satisfied: eth-account==0.5.9 in c:\python311\lib\site-packages (from eth-brownie) (0.5.9)
Collecting eth-event==1.2.3
  Using cached eth_event-1.2.3-py3-none-any.whl (7.3 kB)
Collecting eth-hash[pycryptodome]==0.3.3
  Using cached eth_hash-0.3.3-py3-none-any.whl (8.9 kB)
Requirement already satisfied: eth-keyfile==0.5.1 in c:\python311\lib\site-packages (from eth-brownie) (0.5.1)
Requirement already satisfied: eth-keys==0.3.4 in c:\python311\lib\site-packages (from eth-brownie) (0.3.4)
Requirement already satisfied: eth-rlp==0.2.1 in c:\python311\lib\site-packages (from eth-brownie) (0.2.1)
Requirement already satisfied: eth-typing==2.3.0 in c:\python311\lib\site-packages (from eth-brownie) (2.3.0)
Collecting eth-utils==1.10.0
  Using cached eth_utils-1.10.0-py3-none-any.whl (24 kB)
Collecting execnet==1.9.0
  Using cached execnet-1.9.0-py2.py3-none-any.whl (39 kB)
Collecting frozenlist==1.3.1
  Using cached frozenlist-1.3.1.tar.gz (66 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting hexbytes==0.2.3
  Using cached hexbytes-0.2.3-py3-none-any.whl (6.4 kB)
Collecting hypothesis==6.27.3
  Using cached hypothesis-6.27.3-py3-none-any.whl (384 kB)
Requirement already satisfied: idna==3.4 in c:\python311\lib\site-packages (from eth-brownie) (3.4)
Collecting inflection==0.5.0
  Using cached inflection-0.5.0-py2.py3-none-any.whl (5.8 kB)
Collecting iniconfig==1.1.1
  Using cached iniconfig-1.1.1-py2.py3-none-any.whl (5.0 kB)
Requirement already satisfied: ipfshttpclient==0.8.0a2 in c:\python311\lib\site-packages (from eth-brownie) (0.8.0a2)
Collecting jsonschema==3.2.0
  Using cached jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
Collecting lazy-object-proxy==1.7.1
  Using cached lazy-object-proxy-1.7.1.tar.gz (41 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: lru-dict==1.1.8 in c:\python311\lib\site-packages (from eth-brownie) (1.1.8)
Requirement already satisfied: multiaddr==0.0.9 in c:\python311\lib\site-packages (from eth-brownie) (0.0.9)
Collecting multidict==6.0.2
  Using cached multidict-6.0.2.tar.gz (50 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: mypy-extensions==0.4.3 in c:\python311\lib\site-packages (from eth-brownie) (0.4.3)
Collecting mythx-models==1.9.1
  Using cached mythx_models-1.9.1-py2.py3-none-any.whl (82 kB)
Requirement already satisfied: netaddr==0.8.0 in c:\python311\lib\site-packages (from eth-brownie) (0.8.0)
Collecting packaging==21.3
  Using cached packaging-21.3-py3-none-any.whl (40 kB)
Requirement already satisfied: parsimonious==0.8.1 in c:\python311\lib\site-packages (from eth-brownie) (0.8.1)
Collecting pathspec==0.10.1
  Using cached pathspec-0.10.1-py3-none-any.whl (27 kB)
Collecting platformdirs==2.5.2
  Using cached platformdirs-2.5.2-py3-none-any.whl (14 kB)
Collecting pluggy==1.0.0
  Using cached pluggy-1.0.0-py2.py3-none-any.whl (13 kB)
Collecting prompt-toolkit==3.0.31
  Using cached prompt_toolkit-3.0.31-py3-none-any.whl (382 kB)
Requirement already satisfied: protobuf==3.19.5 in c:\python311\lib\site-packages (from eth-brownie) (3.19.5)
Collecting psutil==5.9.2
  Using cached psutil-5.9.2.tar.gz (479 kB)
  Preparing metadata (setup.py) ... done
Collecting py==1.11.0
  Using cached py-1.11.0-py2.py3-none-any.whl (98 kB)
Collecting py-solc-ast==1.2.9
  Using cached py_solc_ast-1.2.9-py3-none-any.whl (10 kB)
Requirement already satisfied: py-solc-x==1.1.1 in c:\python311\lib\site-packages (from eth-brownie) (1.1.1)
Collecting pycryptodome==3.15.0
  Using cached pycryptodome-3.15.0-cp35-abi3-win_amd64.whl (1.9 MB)
Collecting pygments==2.13.0
  Using cached Pygments-2.13.0-py3-none-any.whl (1.1 MB)
Collecting pygments-lexer-solidity==0.7.0
  Using cached pygments_lexer_solidity-0.7.0-py3-none-any.whl
Collecting pyjwt==1.7.1
  Using cached PyJWT-1.7.1-py2.py3-none-any.whl (18 kB)
Collecting pyparsing==3.0.9
  Using cached pyparsing-3.0.9-py3-none-any.whl (98 kB)
Collecting pyrsistent==0.18.1
  Using cached pyrsistent-0.18.1.tar.gz (100 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting pytest==6.2.5
  Using cached pytest-6.2.5-py3-none-any.whl (280 kB)
Collecting pytest-forked==1.4.0
  Using cached pytest_forked-1.4.0-py3-none-any.whl (4.9 kB)
Collecting pytest-xdist==1.34.0
  Using cached pytest_xdist-1.34.0-py2.py3-none-any.whl (36 kB)
Collecting python-dateutil==2.8.1
  Using cached python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB)
Collecting python-dotenv==0.16.0
  Using cached python_dotenv-0.16.0-py2.py3-none-any.whl (18 kB)
Collecting pythx==1.6.1
  Using cached pythx-1.6.1-py2.py3-none-any.whl (39 kB)
Collecting pyyaml==5.4.1
  Using cached PyYAML-5.4.1-cp311-cp311-win_amd64.whl
Requirement already satisfied: requests==2.28.1 in c:\python311\lib\site-packages (from eth-brownie) (2.28.1)
Requirement already satisfied: rlp==2.0.1 in c:\python311\lib\site-packages (from eth-brownie) (2.0.1)
Requirement already satisfied: semantic-version==2.10.0 in c:\python311\lib\site-packages (from eth-brownie) (2.10.0)
Requirement already satisfied: six==1.16.0 in c:\python311\lib\site-packages (from eth-brownie) (1.16.0)
Collecting sortedcontainers==2.4.0
  Using cached sortedcontainers-2.4.0-py2.py3-none-any.whl (29 kB)
Collecting toml==0.10.2
  Using cached toml-0.10.2-py2.py3-none-any.whl (16 kB)
Collecting tomli==2.0.1
  Using cached tomli-2.0.1-py3-none-any.whl (12 kB)
Requirement already satisfied: toolz==0.12.0 in c:\python311\lib\site-packages (from eth-brownie) (0.12.0)
Collecting tqdm==4.64.1
  Using cached tqdm-4.64.1-py2.py3-none-any.whl (78 kB)
Collecting urllib3==1.26.12
  Using cached urllib3-1.26.12-py2.py3-none-any.whl (140 kB)
Requirement already satisfied: varint==1.0.2 in c:\python311\lib\site-packages (from eth-brownie) (1.0.2)
Collecting vvm==0.1.0
  Using cached vvm-0.1.0-py3-none-any.whl (11 kB)
Collecting eth-brownie
  Using cached eth_brownie-1.19.1-py3-none-any.whl (232 kB)
Collecting aiohttp==3.8.1
  Using cached aiohttp-3.8.1.tar.gz (7.3 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Collecting black==22.6.0
  Using cached black-22.6.0-py3-none-any.whl (156 kB)
Collecting certifi==2022.6.15
  Using cached certifi-2022.6.15-py3-none-any.whl (160 kB)
Collecting charset-normalizer==2.1.0
  Using cached charset_normalizer-2.1.0-py3-none-any.whl (39 kB)
Collecting hexbytes==0.2.2
  Using cached hexbytes-0.2.2-py3-none-any.whl (6.1 kB)
Collecting idna==3.3
  Using cached idna-3.3-py3-none-any.whl (61 kB)
Collecting pathspec==0.9.0
  Using cached pathspec-0.9.0-py2.py3-none-any.whl (31 kB)
Collecting prompt-toolkit==3.0.30
  Using cached prompt_toolkit-3.0.30-py3-none-any.whl (381 kB)
Collecting protobuf==3.20.1
  Using cached protobuf-3.20.1-py2.py3-none-any.whl (162 kB)
Collecting psutil==5.9.1
  Using cached psutil-5.9.1.tar.gz (479 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting pygments==2.12.0
  Using cached Pygments-2.12.0-py3-none-any.whl (1.1 MB)
Collecting semantic-version==2.8.5
  Using cached semantic_version-2.8.5-py2.py3-none-any.whl (15 kB)
Collecting tqdm==4.64.0
  Using cached tqdm-4.64.0-py2.py3-none-any.whl (78 kB)
Collecting urllib3==1.26.11
  Using cached urllib3-1.26.11-py2.py3-none-any.whl (139 kB)
Collecting eth-brownie
  Using cached eth_brownie-1.19.0-py3-none-any.whl (232 kB)
Collecting attrs==21.4.0
  Using cached attrs-21.4.0-py2.py3-none-any.whl (60 kB)
Collecting bitarray==1.2.2
  Using cached bitarray-1.2.2.tar.gz (48 kB)
  Preparing metadata (setup.py) ... done
Collecting black==22.3.0
  Using cached black-22.3.0-py3-none-any.whl (153 kB)
Collecting certifi==2022.5.18.1
  Using cached certifi-2022.5.18.1-py3-none-any.whl (155 kB)
Collecting charset-normalizer==2.0.12
  Using cached charset_normalizer-2.0.12-py3-none-any.whl (39 kB)
Collecting cytoolz==0.11.2
  Using cached cytoolz-0.11.2.tar.gz (481 kB)
  Preparing metadata (setup.py) ... done
Collecting eth-abi==2.1.1
  Using cached eth_abi-2.1.1-py3-none-any.whl (27 kB)
Collecting eth-account==0.5.7
  Using cached eth_account-0.5.7-py3-none-any.whl (101 kB)
Collecting eth-hash[pycryptodome]==0.3.2
  Using cached eth_hash-0.3.2-py3-none-any.whl (8.8 kB)
Collecting frozenlist==1.3.0
  Using cached frozenlist-1.3.0.tar.gz (65 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting lru-dict==1.1.7
  Using cached lru_dict-1.1.7-cp311-cp311-win_amd64.whl
Collecting prompt-toolkit==3.0.29
  Using cached prompt_toolkit-3.0.29-py3-none-any.whl (381 kB)
Collecting pycryptodome==3.14.1
  Using cached pycryptodome-3.14.1-cp35-abi3-win_amd64.whl (1.8 MB)
Collecting requests==2.27.1
  Using cached requests-2.27.1-py2.py3-none-any.whl (63 kB)
Collecting toolz==0.11.2
  Using cached toolz-0.11.2-py3-none-any.whl (55 kB)
Collecting urllib3==1.26.9
  Using cached urllib3-1.26.9-py2.py3-none-any.whl (138 kB)
Collecting eth-brownie
  Using cached eth_brownie-1.18.2-py3-none-any.whl (230 kB)
Collecting certifi==2021.10.8
  Using cached certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
Collecting psutil==5.9.0
  Using cached psutil-5.9.0.tar.gz (478 kB)
  Preparing metadata (setup.py) ... done
Collecting eth-brownie
  Using cached eth_brownie-1.18.1-py3-none-any.whl (225 kB)
Collecting black==22.1.0
  Using cached black-22.1.0-py3-none-any.whl (160 kB)
Collecting charset-normalizer==2.0.11
  Using cached charset_normalizer-2.0.11-py3-none-any.whl (39 kB)
Collecting click==8.0.3
  Using cached click-8.0.3-py3-none-any.whl (97 kB)
Collecting platformdirs==2.4.1
  Using cached platformdirs-2.4.1-py3-none-any.whl (14 kB)
Collecting prompt-toolkit==3.0.26
  Using cached prompt_toolkit-3.0.26-py3-none-any.whl (375 kB)
Collecting protobuf==3.19.4
  Using cached protobuf-3.19.4-py2.py3-none-any.whl (162 kB)
Collecting pygments==2.11.2
  Using cached Pygments-2.11.2-py3-none-any.whl (1.1 MB)
Collecting pyparsing==3.0.7
  Using cached pyparsing-3.0.7-py3-none-any.whl (98 kB)
Collecting tomli==2.0.0
  Using cached tomli-2.0.0-py3-none-any.whl (12 kB)
Collecting tqdm==4.62.3
  Using cached tqdm-4.62.3-py2.py3-none-any.whl (76 kB)
Collecting typing-extensions==4.0.1
  Using cached typing_extensions-4.0.1-py3-none-any.whl (22 kB)
Collecting urllib3==1.26.8
  Using cached urllib3-1.26.8-py2.py3-none-any.whl (138 kB)
Collecting eth-brownie
  Using cached eth_brownie-1.18.0-py3-none-any.whl (225 kB)
  Using cached eth_brownie-1.17.2-py3-none-any.whl (221 kB)
Collecting async-timeout==4.0.1
  Using cached async_timeout-4.0.1-py3-none-any.whl (5.7 kB)
Collecting asynctest==0.13.0
  Using cached asynctest-0.13.0-py3-none-any.whl (26 kB)
Collecting attrs==21.2.0
  Using cached attrs-21.2.0-py2.py3-none-any.whl (53 kB)
Collecting black==21.11b1
  Using cached black-21.11b1-py3-none-any.whl (155 kB)
Collecting cached-property==1.5.2
  Using cached cached_property-1.5.2-py2.py3-none-any.whl (7.6 kB)
Collecting charset-normalizer==2.0.9
  Using cached charset_normalizer-2.0.9-py3-none-any.whl (39 kB)
Collecting eth-account==0.5.6
  Using cached eth_account-0.5.6-py3-none-any.whl (101 kB)
Collecting eth-keys==0.3.3
  Using cached eth_keys-0.3.3-py3-none-any.whl (20 kB)
Collecting eth-typing==2.2.2
  Using cached eth_typing-2.2.2-py3-none-any.whl (6.2 kB)
Collecting frozenlist==1.2.0
  Using cached frozenlist-1.2.0.tar.gz (65 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting importlib-metadata==4.8.2
  Using cached importlib_metadata-4.8.2-py3-none-any.whl (17 kB)
Collecting lazy-object-proxy==1.6.0
  Using cached lazy_object_proxy-1.6.0-cp311-cp311-win_amd64.whl
Collecting multidict==5.2.0
  Using cached multidict-5.2.0.tar.gz (49 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting platformdirs==2.4.0
  Using cached platformdirs-2.4.0-py3-none-any.whl (14 kB)
Collecting prompt-toolkit==3.0.23
  Using cached prompt_toolkit-3.0.23-py3-none-any.whl (374 kB)
Collecting protobuf==3.19.1
  Using cached protobuf-3.19.1-py2.py3-none-any.whl (162 kB)
Collecting psutil==5.8.0
  Using cached psutil-5.8.0-cp311-cp311-win_amd64.whl
Collecting pycryptodome==3.12.0
  Using cached pycryptodome-3.12.0-cp35-abi3-win_amd64.whl (1.8 MB)
Collecting pygments==2.10.0
  Using cached Pygments-2.10.0-py3-none-any.whl (1.0 MB)
Collecting pyparsing==3.0.6
  Using cached pyparsing-3.0.6-py3-none-any.whl (97 kB)
Collecting pyrsistent==0.18.0
  Using cached pyrsistent-0.18.0-cp311-cp311-win_amd64.whl
Collecting pytest-forked==1.3.0
  Using cached pytest_forked-1.3.0-py2.py3-none-any.whl (4.7 kB)
Collecting regex==2021.11.10
  Using cached regex-2021.11.10.tar.gz (702 kB)
  Preparing metadata (setup.py) ... done
Collecting requests==2.26.0
  Using cached requests-2.26.0-py2.py3-none-any.whl (62 kB)
Collecting tomli==1.2.2
  Using cached tomli-1.2.2-py3-none-any.whl (12 kB)
Collecting typed-ast==1.5.1
  Using cached typed_ast-1.5.1.tar.gz (252 kB)
  Preparing metadata (setup.py) ... done
Collecting typing-extensions==
  Using cached typing_extensions- (26 kB)
Collecting urllib3==1.26.7
  Using cached urllib3-1.26.7-py2.py3-none-any.whl (138 kB)
Collecting eth-brownie
  Using cached eth_brownie-1.17.1-py3-none-any.whl (221 kB)
Collecting aiohttp==3.7.4.post0
  Using cached aiohttp-3.7.4.post0-py3-none-any.whl
Collecting asttokens==2.0.4
  Using cached asttokens-2.0.4-py2.py3-none-any.whl (20 kB)
Collecting async-timeout==3.0.1
  Using cached async_timeout-3.0.1-py3-none-any.whl (8.2 kB)
Collecting base58==2.1.0
  Using cached base58-2.1.0-py3-none-any.whl (5.6 kB)
Collecting black==21.9b0
  Using cached black-21.9b0-py3-none-any.whl (148 kB)
Collecting chardet==4.0.0
  Using cached chardet-4.0.0-py2.py3-none-any.whl (178 kB)
Collecting charset-normalizer==2.0.7
  Using cached charset_normalizer-2.0.7-py3-none-any.whl (38 kB)
Collecting cytoolz==0.11.0
  Using cached cytoolz-0.11.0.tar.gz (477 kB)
  Preparing metadata (setup.py) ... done
Collecting hypothesis==6.24.0
  Using cached hypothesis-6.24.0-py3-none-any.whl (381 kB)
Collecting packaging==21.0
  Using cached packaging-21.0-py3-none-any.whl (40 kB)
Collecting prompt-toolkit==3.0.21
  Using cached prompt_toolkit-3.0.21-py3-none-any.whl (374 kB)
Collecting protobuf==3.19.0
  Using cached protobuf-3.19.0-py2.py3-none-any.whl (162 kB)
Collecting py==1.10.0
  Using cached py-1.10.0-py2.py3-none-any.whl (97 kB)
Collecting pycryptodome==3.11.0
  Using cached pycryptodome-3.11.0-cp35-abi3-win_amd64.whl (1.8 MB)
Collecting pyparsing==3.0.3
  Using cached pyparsing-3.0.3-py3-none-any.whl (96 kB)
Collecting regex==2021.10.23
  Using cached regex-2021.10.23.tar.gz (703 kB)
  Preparing metadata (setup.py) ... done
Collecting toolz==0.11.1
  Using cached toolz-0.11.1-py3-none-any.whl (55 kB)
Collecting eth-brownie
  Using cached eth_brownie-1.17.0-py3-none-any.whl (221 kB)
Collecting dataclassy==0.11.0
  Using cached dataclassy-0.11.0-py3-none-any.whl (23 kB)
Collecting hypothesis==6.23.2
  Using cached hypothesis-6.23.2-py3-none-any.whl (381 kB)
Collecting idna==3.2
  Using cached idna-3.2-py3-none-any.whl (59 kB)
Collecting prompt-toolkit==3.0.20
  Using cached prompt_toolkit-3.0.20-py3-none-any.whl (370 kB)
Collecting protobuf==3.18.1
  Using cached protobuf-3.18.1-py2.py3-none-any.whl (174 kB)
Collecting pyparsing==2.4.7
  Using cached pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
Collecting regex==2021.10.8
  Using cached regex-2021.10.8.tar.gz (703 kB)
  Preparing metadata (setup.py) ... done
Collecting rlp==1.2.0
  Using cached rlp-1.2.0-py2.py3-none-any.whl (19 kB)
Collecting tomli==1.2.1
  Using cached tomli-1.2.1-py3-none-any.whl (11 kB)
Collecting eth-brownie
  Using cached eth_brownie-1.16.4-py3-none-any.whl (219 kB)
Collecting certifi==2021.5.30
  Using cached certifi-2021.5.30-py2.py3-none-any.whl (145 kB)
Collecting charset-normalizer==2.0.6
  Using cached charset_normalizer-2.0.6-py3-none-any.whl (37 kB)
Collecting click==8.0.1
  Using cached click-8.0.1-py3-none-any.whl (97 kB)
Collecting dataclassy==0.10.4
  Using cached dataclassy-0.10.4-py3-none-any.whl (23 kB)
Collecting eth-account==0.5.5
  Using cached eth_account-0.5.5-py3-none-any.whl (100 kB)
Collecting hypothesis==6.21.6
  Using cached hypothesis-6.21.6-py3-none-any.whl (381 kB)
Collecting multidict==5.1.0
  Using cached multidict-5.1.0-cp311-cp311-win_amd64.whl
Collecting platformdirs==2.3.0
  Using cached platformdirs-2.3.0-py3-none-any.whl (13 kB)
Collecting protobuf==3.18.0
  Using cached protobuf-3.18.0-py2.py3-none-any.whl (174 kB)
Collecting py-solc-x==1.1.0
  Using cached py_solc_x-1.1.0-py3-none-any.whl (15 kB)
Collecting pycryptodome==3.10.1
  Using cached pycryptodome-3.10.1-cp35-abi3-win_amd64.whl (1.6 MB)
Collecting regex==2021.8.28
  Using cached regex-2021.8.28-cp311-cp311-win_amd64.whl
Collecting urllib3==1.26.6
  Using cached urllib3-1.26.6-py2.py3-none-any.whl (138 kB)
Collecting vyper==0.2.16
  Using cached vyper-0.2.16-py3-none-any.whl (236 kB)
Collecting wcwidth==0.2.5
  Using cached wcwidth-0.2.5-py2.py3-none-any.whl (30 kB)
Collecting web3==5.23.1
  Using cached web3-5.23.1-py3-none-any.whl (486 kB)
Requirement already satisfied: websockets==9.1 in c:\python311\lib\site-packages (from eth-brownie) (9.1)
Collecting wrapt==1.12.1
  Using cached wrapt-1.12.1-cp311-cp311-win_amd64.whl
Collecting yarl==1.6.3
  Using cached yarl-1.6.3.tar.gz (176 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: colorama in c:\python311\lib\site-packages (from click==8.0.1->eth-brownie) (0.4.6)
Requirement already satisfied: setuptools in c:\python311\lib\site-packages (from jsonschema==3.2.0->eth-brownie) (65.5.0)
Collecting atomicwrites>=1.0
  Using cached atomicwrites-1.4.1-py2.py3-none-any.whl
Requirement already satisfied: pywin32>=223 in c:\python311\lib\site-packages (from web3==5.23.1->eth-brownie) (305)
WARNING: The candidate selected for download or install is a yanked version: 'protobuf' candidate (version 3.18.0 at https://files.pythonhosted.org/packages/74/4e/9f3cb458266ef5cdeaa1e72a90b9eda100e3d1803cbd7ec02f0846da83c3/protobuf-3.18.0-py2.py3-none-any.whl (from https://pypi.org/simple/protobuf/))
Reason for being yanked: This version claims to support Python 2 but does not
Building wheels for collected packages: yarl
  Building wheel for yarl (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for yarl (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [44 lines of output]
      C:\Users\shark\AppData\Local\Temp\pip-build-env-7jfcsmi9\overlay\Lib\site-packages\setuptools\config\setupcfg.py:508: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead.
        warnings.warn(msg, warning_class)
      * Accellerated build *
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-cpython-311
      creating build\lib.win-amd64-cpython-311\yarl
      copying yarl\_quoting.py -> build\lib.win-amd64-cpython-311\yarl
      copying yarl\_quoting_py.py -> build\lib.win-amd64-cpython-311\yarl
      copying yarl\_url.py -> build\lib.win-amd64-cpython-311\yarl
      copying yarl\__init__.py -> build\lib.win-amd64-cpython-311\yarl
      running egg_info
      writing yarl.egg-info\PKG-INFO
      writing dependency_links to yarl.egg-info\dependency_links.txt
      writing requirements to yarl.egg-info\requires.txt
      writing top-level names to yarl.egg-info\top_level.txt
      reading manifest file 'yarl.egg-info\SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      warning: no previously-included files matching '*.pyc' found anywhere in distribution
      warning: no previously-included files matching '*.cache' found anywhere in distribution
      warning: no previously-included files found matching 'yarl\*.html'
      warning: no previously-included files found matching 'yarl\*.so'
      warning: no previously-included files found matching 'yarl\*.pyd'
      no previously-included directories found matching 'docs\_build'
      adding license file 'LICENSE'
      writing manifest file 'yarl.egg-info\SOURCES.txt'
      copying yarl\__init__.pyi -> build\lib.win-amd64-cpython-311\yarl
      copying yarl\_quoting_c.c -> build\lib.win-amd64-cpython-311\yarl
      copying yarl\_quoting_c.pyi -> build\lib.win-amd64-cpython-311\yarl
      copying yarl\_quoting_c.pyx -> build\lib.win-amd64-cpython-311\yarl
      copying yarl\py.typed -> build\lib.win-amd64-cpython-311\yarl
      building 'yarl._quoting_c' extension
      creating build\temp.win-amd64-cpython-311
      creating build\temp.win-amd64-cpython-311\Release
      creating build\temp.win-amd64-cpython-311\Release\yarl
      "C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -IC:\Python311\include -IC:\Python311\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\include" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt" /Tcyarl/_quoting_c.c /Fobuild\temp.win-amd64-cpython-311\Release\yarl/_quoting_c.obj
      yarl/_quoting_c.c(196): fatal error C1083: Cannot open include file: 'longintrepr.h': No such file or directory
      error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\VC\\Tools\\MSVC\\14.29.30133\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for yarl
Failed to build yarl
ERROR: Could not build wheels for yarl, which is required to install pyproject.toml-based projects

I have already downloaded cytoolz, cython and yarl and attempted to pip install eth brownie but still have this error. I have looked at many stackoverflow reponses to this error but haven't found anything that has resolved my error.

Any help will be greatly appreciated.

  • you need to open an issue on eth-brownie github repository, the projects contributors/builders themselves will maybe fix your issue
    – noro meb
    Jan 6, 2023 at 14:36
  • I think this one may be better asked in the main StackOverflow? it's python, pip and cython problem on windows
    – minhhn2910
    Jan 6, 2023 at 15:04
  • 1
    Thank you for your advice. I will do that
    – Bastion2
    Jan 6, 2023 at 15:04
  • you may search for : "fatal error C1083: Cannot open include file: 'longintrepr.h': No such file or directory" questions and look for solution in windows
    – minhhn2910
    Jan 6, 2023 at 15:04
  • Thank you for your help
    – Bastion2
    Jan 6, 2023 at 15:08

1 Answer 1


I had the same issue, also because I'm going through the same course that you are. I spent hours trying to get it work with a variety of approaches.

The following worked, and now I have brownie running on my machine:

  1. Downgrade Python to v3.9 (there are tutorials on how to do this).
  2. Just in case, I installed certain dependencies in advance with these commands --

python -m pip install yarl

python -m pip install bitarray

python -m pip install cytoolz

  1. I tried to install brownie with the final command of --

python -m pip install eth-brownie

  1. It failed at first. I was running all of that from a regular shell. I tried again with the last command in an administrator shell (just open Powershell as Admin) and it worked.

I tested with "brownie --version" and it says I'm running v1.19.2 which I believe is current.

Good luck! You may try just downgrading Python to v3.10 instead of 3.9. I may have gone a little overboard. I just wanted to be sure I was running a version very well tested. (I also don't feel like messing with virtual environments right now on the main laptop I'm using for this course.)

[I can give more details about all the different attempts I made before arriving at the solution, if anyone wants. Fundamentally, I believe eth-brownie isn't ready for Python v3.11 on Windows.]

  • Thank you so much. I will try that!
    – Bastion2
    Jan 19, 2023 at 19:51
  • Downgrading python to 3.10.9 also works Feb 14, 2023 at 10:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.