ccxt: Is there new installation problem with Python 3.12?
Operating System
Win 11
Programming Languages
Python
CCXT Version
No response
Description
I tried a fresh install of ccxt on Python 3.12 version. However, I couldn’t install it. There are some problems with other Python packages. Is there anyone who can install ccxt on Python 3.12?
Code
About this issue
- Original URL
- State: open
- Created 9 months ago
- Comments: 15 (3 by maintainers)
Until a stable version of aiohttp is released , you can get it working with
pip install aiohttp==3.9.0b0. CCXT works fine with Pyhton 3.12 for me like this.@kubilaykilinc thanks
I tried only install aiohttp. Could’nt it. Yes you finded main reason. Thank you. I wil follow aiohttp updates. When i can install aiohttp and ccxt over python 3.12 i will write under this session.
@kubilaykilinc, interesting I got an error as well, but a different one (related to aiohttp)
Hi,
I used this line for installation : pip install -U --user ccxt
Full installation process and error messages
Collecting ccxt Obtaining dependency information for ccxt from https://files.pythonhosted.org/packages/e5/9d/dc4f0386a0bd071cca26980a049aaa4af582bb7a67ec96339f5f6c3827d7/ccxt-4.1.13-py2.py3-none-any.whl.metadata Using cached ccxt-4.1.13-py2.py3-none-any.whl.metadata (109 kB) Requirement already satisfied: setuptools>=60.9.0 in c:\users\kubilay\appdata\roaming\python\python312\site-packages (from ccxt) (68.2.2) Collecting certifi>=2018.1.18 (from ccxt) Obtaining dependency information for certifi>=2018.1.18 from https://files.pythonhosted.org/packages/4c/dd/2234eab22353ffc7d94e8d13177aaa050113286e93e7b40eae01fbf7c3d9/certifi-2023.7.22-py3-none-any.whl.metadata Using cached certifi-2023.7.22-py3-none-any.whl.metadata (2.2 kB) Collecting requests>=2.18.4 (from ccxt) Obtaining dependency information for requests>=2.18.4 from https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl.metadata Using cached requests-2.31.0-py3-none-any.whl.metadata (4.6 kB) Collecting cryptography>=2.6.1 (from ccxt) Obtaining dependency information for cryptography>=2.6.1 from https://files.pythonhosted.org/packages/d7/78/29d8332bebfe3c2d49a63fb23e1c9fc73a13507b5206b98479fda04c993b/cryptography-41.0.4-cp37-abi3-win_amd64.whl.metadata Using cached cryptography-41.0.4-cp37-abi3-win_amd64.whl.metadata (5.3 kB) Collecting aiohttp>=3.8 (from ccxt) Using cached aiohttp-3.8.6.tar.gz (7.4 MB) Installing build dependencies … done Getting requirements to build wheel … done Installing backend dependencies … done Preparing metadata (pyproject.toml) … done Collecting aiodns>=1.1.1 (from ccxt) Obtaining dependency information for aiodns>=1.1.1 from https://files.pythonhosted.org/packages/1a/74/976abff30200cb0cab0bd076db074b8cdda9236ba885ebe3f4d91c7e074b/aiodns-3.1.1-py3-none-any.whl.metadata Downloading aiodns-3.1.1-py3-none-any.whl.metadata (4.0 kB) Collecting yarl>=1.7.2 (from ccxt) Using cached yarl-1.9.2.tar.gz (184 kB) Installing build dependencies … done Getting requirements to build wheel … done Preparing metadata (pyproject.toml) … done Collecting pycares>=4.0.0 (from aiodns>=1.1.1->ccxt) Obtaining dependency information for pycares>=4.0.0 from https://files.pythonhosted.org/packages/d3/72/e6af5a0670eb0b5beadef95479387af22b0ed7088e180677be04bf076476/pycares-4.4.0-cp312-cp312-win_amd64.whl.metadata Using cached pycares-4.4.0-cp312-cp312-win_amd64.whl.metadata (4.5 kB) Collecting attrs>=17.3.0 (from aiohttp>=3.8->ccxt) Using cached attrs-23.1.0-py3-none-any.whl (61 kB) Collecting charset-normalizer<4.0,>=2.0 (from aiohttp>=3.8->ccxt) Obtaining dependency information for charset-normalizer<4.0,>=2.0 from https://files.pythonhosted.org/packages/d1/47/148eae656ac376938afc97ed288893c6089038180c9e0782e5423ac0307d/charset_normalizer-3.3.0-cp312-cp312-win_amd64.whl.metadata Using cached charset_normalizer-3.3.0-cp312-cp312-win_amd64.whl.metadata (33 kB) Collecting multidict<7.0,>=4.5 (from aiohttp>=3.8->ccxt) Using cached multidict-6.0.4.tar.gz (51 kB) Installing build dependencies … done Getting requirements to build wheel … done Installing backend dependencies … done Preparing metadata (pyproject.toml) … done Collecting async-timeout<5.0,>=4.0.0a3 (from aiohttp>=3.8->ccxt) Obtaining dependency information for async-timeout<5.0,>=4.0.0a3 from https://files.pythonhosted.org/packages/a7/fa/e01228c2938de91d47b307831c62ab9e4001e747789d0b05baf779a6488c/async_timeout-4.0.3-py3-none-any.whl.metadata Using cached async_timeout-4.0.3-py3-none-any.whl.metadata (4.2 kB) Collecting frozenlist>=1.1.1 (from aiohttp>=3.8->ccxt) Using cached frozenlist-1.4.0.tar.gz (90 kB) Installing build dependencies … done Getting requirements to build wheel … done Preparing metadata (pyproject.toml) … done Collecting aiosignal>=1.1.2 (from aiohttp>=3.8->ccxt) Using cached aiosignal-1.3.1-py3-none-any.whl (7.6 kB) Collecting cffi>=1.12 (from cryptography>=2.6.1->ccxt) Obtaining dependency information for cffi>=1.12 from https://files.pythonhosted.org/packages/e9/63/e285470a4880a4f36edabe4810057bd4b562c6ddcc165eacf9c3c7210b40/cffi-1.16.0-cp312-cp312-win_amd64.whl.metadata Using cached cffi-1.16.0-cp312-cp312-win_amd64.whl.metadata (1.5 kB) Collecting idna<4,>=2.5 (from requests>=2.18.4->ccxt) Using cached idna-3.4-py3-none-any.whl (61 kB) Collecting urllib3<3,>=1.21.1 (from requests>=2.18.4->ccxt) Obtaining dependency information for urllib3<3,>=1.21.1 from https://files.pythonhosted.org/packages/26/40/9957270221b6d3e9a3b92fdfba80dd5c9661ff45a664b47edd5d00f707f5/urllib3-2.0.6-py3-none-any.whl.metadata Using cached urllib3-2.0.6-py3-none-any.whl.metadata (6.6 kB) Collecting pycparser (from cffi>=1.12->cryptography>=2.6.1->ccxt) Using cached pycparser-2.21-py2.py3-none-any.whl (118 kB) Using cached ccxt-4.1.13-py2.py3-none-any.whl (3.9 MB) Downloading aiodns-3.1.1-py3-none-any.whl (5.4 kB) Using cached certifi-2023.7.22-py3-none-any.whl (158 kB) Using cached cryptography-41.0.4-cp37-abi3-win_amd64.whl (2.7 MB) Using cached requests-2.31.0-py3-none-any.whl (62 kB) Using cached async_timeout-4.0.3-py3-none-any.whl (5.7 kB) Using cached cffi-1.16.0-cp312-cp312-win_amd64.whl (181 kB) Using cached charset_normalizer-3.3.0-cp312-cp312-win_amd64.whl (98 kB) Using cached pycares-4.4.0-cp312-cp312-win_amd64.whl (76 kB) Using cached urllib3-2.0.6-py3-none-any.whl (123 kB) Building wheels for collected packages: aiohttp, yarl, frozenlist, multidict Building wheel for aiohttp (pyproject.toml) … error error: subprocess-exited-with-error
× Building wheel for aiohttp (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [94 lines of output] ********************* * Accelerated build * ********************* running bdist_wheel running build running build_py creating build creating build\lib.win-amd64-cpython-312 creating build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\abc.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\base_protocol.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\client.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\client_exceptions.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\client_proto.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\client_reqrep.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\client_ws.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\connector.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\cookiejar.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\formdata.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\hdrs.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\helpers.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\http.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\http_exceptions.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\http_parser.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\http_websocket.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\http_writer.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\locks.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\log.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\multipart.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\payload.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\payload_streamer.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\pytest_plugin.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\resolver.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\streams.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\tcp_helpers.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\test_utils.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\tracing.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\typedefs.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_app.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_exceptions.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_fileresponse.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_log.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_middlewares.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_protocol.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_request.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_response.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_routedef.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_runner.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_server.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_urldispatcher.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\web_ws.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\worker.py -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp_init_.py -> build\lib.win-amd64-cpython-312\aiohttp running egg_info writing aiohttp.egg-info\PKG-INFO writing dependency_links to aiohttp.egg-info\dependency_links.txt writing requirements to aiohttp.egg-info\requires.txt writing top-level names to aiohttp.egg-info\top_level.txt reading manifest file ‘aiohttp.egg-info\SOURCES.txt’ reading manifest template ‘MANIFEST.in’ warning: no files found matching ‘aiohttp’ anywhere in distribution warning: no previously-included files matching ‘.pyc’ found anywhere in distribution warning: no previously-included files matching '.pyd’ found anywhere in distribution warning: no previously-included files matching ‘.so’ found anywhere in distribution warning: no previously-included files matching '.lib’ found anywhere in distribution warning: no previously-included files matching ‘.dll’ found anywhere in distribution warning: no previously-included files matching '.a’ found anywhere in distribution warning: no previously-included files matching ‘*.obj’ found anywhere in distribution warning: no previously-included files found matching ‘aiohttp*.html’ no previously-included directories found matching ‘docs_build’ adding license file ‘LICENSE.txt’ writing manifest file ‘aiohttp.egg-info\SOURCES.txt’ copying aiohttp_cparser.pxd -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp_find_header.pxd -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp_headers.pxi -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp_helpers.pyi -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp_helpers.pyx -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp_http_parser.pyx -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp_http_writer.pyx -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp_websocket.pyx -> build\lib.win-amd64-cpython-312\aiohttp copying aiohttp\py.typed -> build\lib.win-amd64-cpython-312\aiohttp creating build\lib.win-amd64-cpython-312\aiohttp.hash copying aiohttp.hash_cparser.pxd.hash -> build\lib.win-amd64-cpython-312\aiohttp.hash copying aiohttp.hash_find_header.pxd.hash -> build\lib.win-amd64-cpython-312\aiohttp.hash copying aiohttp.hash_helpers.pyi.hash -> build\lib.win-amd64-cpython-312\aiohttp.hash copying aiohttp.hash_helpers.pyx.hash -> build\lib.win-amd64-cpython-312\aiohttp.hash copying aiohttp.hash_http_parser.pyx.hash -> build\lib.win-amd64-cpython-312\aiohttp.hash copying aiohttp.hash_http_writer.pyx.hash -> build\lib.win-amd64-cpython-312\aiohttp.hash copying aiohttp.hash_websocket.pyx.hash -> build\lib.win-amd64-cpython-312\aiohttp.hash copying aiohttp.hash\hdrs.py.hash -> build\lib.win-amd64-cpython-312\aiohttp.hash running build_ext building ‘aiohttp._websocket’ extension error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools”: https://visualstudio.microsoft.com/visual-cpp-build-tools/ [end of output]
note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for aiohttp 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 ╰─> [49 lines of output] E:\Temp\WinTemp\pip-build-env-pqu9hzq2\overlay\Lib\site-packages\setuptools\config\setupcfg.py:293: _DeprecatedConfig: Deprecated config in
setup.cfg!!note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for yarl Building wheel for frozenlist (pyproject.toml) … error error: subprocess-exited-with-error
× Building wheel for frozenlist (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [33 lines of output] ********************* * Accelerated build * ********************* running bdist_wheel running build running build_py creating build creating build\lib.win-amd64-cpython-312 creating build\lib.win-amd64-cpython-312\frozenlist copying frozenlist_init_.py -> build\lib.win-amd64-cpython-312\frozenlist running egg_info writing frozenlist.egg-info\PKG-INFO writing dependency_links to frozenlist.egg-info\dependency_links.txt writing top-level names to frozenlist.egg-info\top_level.txt reading manifest file ‘frozenlist.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 '.pyd’ found anywhere in distribution warning: no previously-included files matching ‘.so’ found anywhere in distribution warning: no previously-included files matching '.lib’ found anywhere in distribution warning: no previously-included files matching ‘.dll’ found anywhere in distribution warning: no previously-included files matching '.a’ found anywhere in distribution warning: no previously-included files matching ‘*.obj’ found anywhere in distribution warning: no previously-included files found matching ‘frozenlist*.html’ no previously-included directories found matching ‘docs_build’ adding license file ‘LICENSE’ writing manifest file ‘frozenlist.egg-info\SOURCES.txt’ copying frozenlist_init_.pyi -> build\lib.win-amd64-cpython-312\frozenlist copying frozenlist_frozenlist.pyx -> build\lib.win-amd64-cpython-312\frozenlist copying frozenlist\py.typed -> build\lib.win-amd64-cpython-312\frozenlist running build_ext building ‘frozenlist._frozenlist’ extension error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools”: https://visualstudio.microsoft.com/visual-cpp-build-tools/ [end of output]
note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for frozenlist Building wheel for multidict (pyproject.toml) … error error: subprocess-exited-with-error
× Building wheel for multidict (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [74 lines of output] ********************* * Accelerated build * ********************* running bdist_wheel running build running build_py creating build creating build\lib.win-amd64-cpython-312 creating build\lib.win-amd64-cpython-312\multidict copying multidict_abc.py -> build\lib.win-amd64-cpython-312\multidict copying multidict_compat.py -> build\lib.win-amd64-cpython-312\multidict copying multidict_multidict_base.py -> build\lib.win-amd64-cpython-312\multidict copying multidict_multidict_py.py -> build\lib.win-amd64-cpython-312\multidict copying multidict_init_.py -> build\lib.win-amd64-cpython-312\multidict running egg_info writing multidict.egg-info\PKG-INFO writing dependency_links to multidict.egg-info\dependency_links.txt writing top-level names to multidict.egg-info\top_level.txt reading manifest file ‘multidict.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 found matching ‘multidict_multidict.html’ warning: no previously-included files found matching ‘multidict*.so’ warning: no previously-included files found matching ‘multidict*.pyd’ warning: no previously-included files found matching ‘multidict*.pyd’ no previously-included directories found matching ‘docs_build’ adding license file ‘LICENSE’ writing manifest file ‘multidict.egg-info\SOURCES.txt’ E:\Temp\WinTemp\pip-build-env-rq_s8icf\overlay\Lib\site-packages\setuptools\command\build_py.py:204: _Warning: Package ‘multidict._multilib’ is absent from the
packagesconfiguration. !!note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for multidict Failed to build aiohttp yarl frozenlist multidict ERROR: Could not build wheels for aiohttp, yarl, frozenlist, multidict, which is required to install pyproject.toml-based projects