Error of 'building multipledict' while installing ccxt. What shall I do?

69 views Asked by At

I was trying to install ccxt package in python for my project.

pip install ccxt

But while doing so it went gave an error.

  Using cached ccxt-4.2.11-py2.py3-none-any.whl.metadata (170 kB)
Requirement already satisfied: setuptools>=60.9.0 in c:\users\user\appdata\local\programs\python\python312\lib\site-packages (from ccxt) (69.0.2)
Requirement already satisfied: certifi>=2018.1.18 in c:\users\user\appdata\local\programs\python\python312\lib\site-packages (from ccxt) (2023.11.17)
Requirement already satisfied: requests>=2.18.4 in c:\users\user\appdata\local\programs\python\python312\lib\site-packages (from ccxt) (2.31.0)
Collecting cryptography>=2.6.1 (from ccxt)
  Using cached cryptography-41.0.7-cp37-abi3-win_amd64.whl.metadata (5.3 kB)
Requirement already satisfied: typing-extensions>=4.4.0 in c:\users\user\appdata\local\programs\python\python312\lib\site-packages (from ccxt) (4.9.0)
Collecting aiohttp>=3.8 (from ccxt)
  Using cached aiohttp-3.9.1-cp312-cp312-win_amd64.whl.metadata (7.6 kB)
Collecting aiodns>=1.1.1 (from ccxt)
  Using cached aiodns-3.1.1-py3-none-any.whl.metadata (4.0 kB)
Collecting yarl>=1.7.2 (from ccxt)
  Using cached yarl-1.9.4-cp312-cp312-win_amd64.whl.metadata (32 kB)
Collecting pycares>=4.0.0 (from aiodns>=1.1.1->ccxt)
  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.2.0-py3-none-any.whl.metadata (9.5 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 frozenlist>=1.1.1 (from aiohttp>=3.8->ccxt)
  Using cached frozenlist-1.4.1-cp312-cp312-win_amd64.whl.metadata (12 kB)
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)
  Using cached cffi-1.16.0-cp312-cp312-win_amd64.whl.metadata (1.5 kB)
Requirement already satisfied: charset-normalizer<4,>=2 in c:\users\user\appdata\local\programs\python\python312\lib\site-packages (from requests>=2.18.4->ccxt) (3.3.2)
Requirement already satisfied: idna<4,>=2.5 in c:\users\user\appdata\local\programs\python\python312\lib\site-packages (from requests>=2.18.4->ccxt) (3.4)
Requirement already satisfied: urllib3<3,>=1.21.1 in c:\users\user\appdata\local\programs\python\python312\lib\site-packages (from requests>=2.18.4->ccxt) (2.1.0)
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.2.11-py2.py3-none-any.whl (4.1 MB)
Using cached aiodns-3.1.1-py3-none-any.whl (5.4 kB)
Using cached aiohttp-3.9.1-cp312-cp312-win_amd64.whl (362 kB)
Using cached cryptography-41.0.7-cp37-abi3-win_amd64.whl (2.7 MB)
Using cached yarl-1.9.4-cp312-cp312-win_amd64.whl (76 kB)
Using cached attrs-23.2.0-py3-none-any.whl (60 kB)
Using cached cffi-1.16.0-cp312-cp312-win_amd64.whl (181 kB)
Using cached frozenlist-1.4.1-cp312-cp312-win_amd64.whl (50 kB)
Using cached pycares-4.4.0-cp312-cp312-win_amd64.whl (76 kB)
Building wheels for collected packages: multidict
  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'
      C:\Users\USER\AppData\Local\Temp\pip-build-env-4eygkiul\overlay\Lib\site-packages\setuptools\command\build_py.py:207: _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 multidict
ERROR: Could not build wheels for multidict, which is required to install pyproject.toml-based projects.

I also faced the same issue while installing some other packages to.

What shall I do to solve this issue.

I tried to look into and problem as well as probe the internet but didn't get any useful stuff.

[changed screenshots of error with error code.]

And I do have Microsoft Visual C++ of version=14.38.

0

There are 0 answers