天天看點

backports.zoneinfo install error:Building wheel for backports.zoneinfo errorWhich Microsoft Visual C++ compiler to use with a specific Python version ?

執行指令:

pip install backports.zoneinfo

error内容:

・Building wheel for backports.zoneinfo error

・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/

・C:\Users\water\AppData\Local\Temp\pip-build-env-sdj61qe9\overlay\Lib\site-packages\setuptools\config\setupcfg.py:508: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead.

SetuptoolsDeprecationWarning ⇒setuptool 棄用

解決方案:

pip install --upgrade setuptools

更新setuptools

error 内容

(venv) PS D:\PycharmProjects\pj> pip install backports.zoneinfoCollecting backports.zoneinfo
  Downloading backports.zoneinfo-0.2.1.tar.gz (74 kB)     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 74.1/74.1 kB 4.0 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: backports.zoneinfo
  Building wheel for backports.zoneinfo (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for backports.zoneinfo (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [34 lines of output]
      C:\Users\water\AppData\Local\Temp\pip-build-env-sdj61qe9\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)
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-cpython-39
      creating build\lib.win-amd64-cpython-39\backports
      copying src\backports\__init__.py -> build\lib.win-amd64-cpython-39\backports
      creating build\lib.win-amd64-cpython-39\backports\zoneinfo
      copying src\backports\zoneinfo\_common.py -> build\lib.win-amd64-cpython-39\backports\zoneinfo
      copying src\backports\zoneinfo\_tzpath.py -> build\lib.win-amd64-cpython-39\backports\zoneinfo
      copying src\backports\zoneinfo\_version.py -> build\lib.win-amd64-cpython-39\backports\zoneinfo
      copying src\backports\zoneinfo\_zoneinfo.py -> build\lib.win-amd64-cpython-39\backports\zoneinfo
      copying src\backports\zoneinfo\__init__.py -> build\lib.win-amd64-cpython-39\backports\zoneinfo
      no previously-included directories found matching 'docs\_build'
      no previously-included directories found matching 'docs\_output'
      adding license file 'LICENSE'
      adding license file 'licenses/LICENSE_APACHE'
      writing manifest file 'src\backports.zoneinfo.egg-info\SOURCES.txt'
      copying src\backports\zoneinfo\__init__.pyi -> build\lib.win-amd64-cpython-39\backports\zoneinfo
      copying src\backports\zoneinfo\py.typed -> build\lib.win-amd64-cpython-39\backports\zoneinfo
      running build_ext
      building 'backports.zoneinfo._czoneinfo' 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]           

複制

解決:

1 安裝vs buildtool

安裝buildtool

backports.zoneinfo install error:Building wheel for backports.zoneinfo errorWhich Microsoft Visual C++ compiler to use with a specific Python version ?

2 pip install --upgrade setuptools

3 pip install backports.zoneinfo

Installing collected packages: setuptools
  Attempting uninstall: setuptools
    Found existing installation: setuptools 49.2.1
    Uninstalling setuptools-49.2.1:
      Successfully uninstalled setuptools-49.2.1
Successfully installed setuptools-63.4.2

[notice] A new release of pip available: 22.2.1 -> 22.2.2
[notice] To update, run: python.exe -m pip install --upgrade pip


(venv) PS D:\PycharmProjects\pj> pip install backports.zoneinfo
Collecting backports.zoneinfo
  Using cached backports.zoneinfo-0.2.1.tar.gz (74 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: backports.zoneinfo
  Building wheel for backports.zoneinfo (pyproject.toml) ... done
  Created wheel for backports.zoneinfo: filename=backports.zoneinfo-0.2.1-cp39-cp39-win_amd64.whl size=36442 sha256=9812e976860709bd235b79f8e1d372c8ac7b435d
  Stored in directory: c:\users\water\appdata\local\pip\cache\wheels\f6\da\c4\7ac0330c0d9763cbd549898f8815e8
Successfully built backports.zoneinfo
Installing collected packages: backports.zoneinfoSuccessfully installed backports.zoneinfo-0.2.1

[notice] A new release of pip available: 22.2.1 -> 22.2.2
[notice] To update, run: python.exe -m pip install --upgrade pip
(venv) PS D:\PycharmProjects\pj>           

複制

參照:

WindowsCompilers

Which Microsoft Visual C++ compiler to use with a specific Python version ?

Each Python version uses a specific compiler version (e.g. CPython 2.7 uses Visual C++ 9.0, CPython 3.3 uses Visual C++ 10.0, etc). So, you need to install the compiler version that corresponds to your Python version :

Visual C++ CPython
14.x 3.5 - 3.10
10.0 3.3 - 3.4
9.0 2.6 - 2.7, 3.0 - 3.2