ccxt / ccxt

A JavaScript / TypeScript / Python / C# / PHP cryptocurrency trading API with support for more than 100 bitcoin/altcoin exchanges
https://docs.ccxt.com
MIT License
32.51k stars 7.47k forks source link

Is there new installation problem with Python 3.12? #19565

Open kubilaykilinc opened 11 months ago

kubilaykilinc commented 11 months ago

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

  
carlosmiei commented 11 months ago

Hello @kubilaykilinc, no that we're aware of, can you please post the error you got?

kubilaykilinc commented 11 months ago

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 !!

          ********************************************************************************
          The license_file parameter is deprecated, use license_files instead.

          By 2023-Oct-30, you need to update your project and remove deprecated calls
          or your builds will no longer be supported.

          See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
          ********************************************************************************

  !!
    parsed = self.parsers.get(option_name, lambda x: x)(value)
  **********************
  * 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\yarl
  copying yarl\_quoting.py -> build\lib.win-amd64-cpython-312\yarl
  copying yarl\_quoting_py.py -> build\lib.win-amd64-cpython-312\yarl
  copying yarl\_url.py -> build\lib.win-amd64-cpython-312\yarl
  copying yarl\__init__.py -> build\lib.win-amd64-cpython-312\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-312\yarl
  copying yarl\_quoting_c.pyi -> build\lib.win-amd64-cpython-312\yarl
  copying yarl\_quoting_c.pyx -> build\lib.win-amd64-cpython-312\yarl
  copying yarl\py.typed -> build\lib.win-amd64-cpython-312\yarl
  running build_ext
  building 'yarl._quoting_c' 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 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 `packages` configuration.
  !!

          ********************************************************************************
          ############################
          # Package would be ignored #
          ############################
          Python recognizes 'multidict._multilib' as an importable package[^1],
          but it is absent from setuptools' `packages` configuration.

          This leads to an ambiguous overall configuration. If you want to distribute this
          package, please make sure that 'multidict._multilib' is explicitly added
          to the `packages` configuration field.

          Alternatively, you can also rely on setuptools' discovery methods
          (for example by using `find_namespace_packages(...)`/`find_namespace:`
          instead of `find_packages(...)`/`find:`).

          You can read more about "package discovery" on setuptools documentation page:

          - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

          If you don't want 'multidict._multilib' to be distributed and are
          already explicitly excluding 'multidict._multilib' via
          `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
          you can try to use `exclude_package_data`, or `include-package-data=False` in
          combination with a more fine grained `package-data` configuration.

          You can read more about "package data files" on setuptools documentation page:

          - https://setuptools.pypa.io/en/latest/userguide/datafiles.html

          [^1]: For Python, any directory (with suitable naming) can be imported,
                even if it does not contain any `.py` files.
                On the other hand, currently there is no concept of package data
                directory, all directories are treated like packages.
          ********************************************************************************

  !!
    check.warn(importable)
  copying multidict\__init__.pyi -> build\lib.win-amd64-cpython-312\multidict
  copying multidict\py.typed -> build\lib.win-amd64-cpython-312\multidict
  running build_ext
  building 'multidict._multidict' 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 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

carlosmiei commented 11 months ago

@kubilaykilinc, interesting I got an error as well, but a different one (related to aiohttp)

Using cached async_timeout-4.0.3-py3-none-any.whl (5.7 kB)
Downloading cffi-1.16.0-cp312-cp312-macosx_11_0_arm64.whl (177 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 177.2/177.2 kB 5.7 MB/s eta 0:00:00
Downloading charset_normalizer-3.3.0-cp312-cp312-macosx_11_0_arm64.whl (116 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 116.8/116.8 kB 5.5 MB/s eta 0:00:00
Downloading pycares-4.4.0-cp312-cp312-macosx_10_9_universal2.whl (136 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 136.9/136.9 kB 7.9 MB/s eta 0:00:00
Downloading urllib3-2.0.6-py3-none-any.whl (123 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 123.8/123.8 kB 5.4 MB/s eta 0:00:00
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
kubilaykilinc commented 11 months ago

I installed the latest version of visual studio building tools. But I still keep getting this error.

copying multidict__init__.pyi -> build\lib.win-amd64-cpython-312\multidict copying multidict\py.typed -> build\lib.win-amd64-cpython-312\multidict running build_ext building 'multidict._multidict' 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 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

Perhaps the other Python packages that ccxt depends on have not been updated for Python 3.12 yet.

kroitor commented 11 months ago

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/

If you're on a Windows system, you will need to install MSVC++ 14.0 or greater as the error says.

kubilaykilinc commented 11 months ago

I installed before MSVC++ 15.0 but i still got this error. I think most people are still using python 3.11 etc. Maybe i have to back to version Python 3.11 image

carlosmiei commented 11 months ago

@kubilaykilinc Can you try to install only aiohttp ? Currently, that's not working on my side when using python3.12, and since that's a ccxt dependency it might be related

pip install aiohttp

carlosmiei commented 11 months ago

Ok it seems it's in beta testing yet: https://github.com/aio-libs/aiohttp/issues/7646 image

kubilaykilinc commented 11 months ago

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.

carlosmiei commented 11 months ago

@kubilaykilinc thanks

lacabra commented 10 months ago

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.

Hadevmin commented 9 months ago

Hello @carlosmiei ,

Stable version is released. I had install ccxt with python 3.12 without problems.

carlosmiei commented 9 months ago

@Hadevmin thanks for letting us know

Kastorm commented 8 months ago

I got an installation problem pip install ccxt ubuntu 22.04 lts python 3.12 pip 23.3.2

Kastorm commented 8 months ago

!! check.warn(importable) copying multidict/init.pyi -> build/lib.linux-x86_64-cpython-312/multidict copying multidict/py.typed -> build/lib.linux-x86_64-cpython-312/multidict running build_ext building 'multidict._multidict' extension creating build/temp.linux-x86_64-cpython-312 creating build/temp.linux-x86_64-cpython-312/multidict x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -I/var/wbot/.venv/include -I/usr/include/python3.12 -c multidict/_multidict.c -o build/temp.linux-x86_64-cpython-312/multidict/_multidict.o -O2 -std=c99 -Wall -Wsign-compare -Wconversion -fno-strict-aliasing -pedantic error: command 'x86_64-linux-gnu-gcc' failed: No such file or directory [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for multidict Failed to build multidict ERROR: Could not build wheels for multidict, which is required to install pyproject.toml-based projects (.venv) root@ubuntu22-mysql-csv:/var/wbot#