无法为依赖注入器构建轮子,这是安装基于 pyproject.toml 的项目所必需的

问题描述 投票:0回答:2

我正在为我的项目安装“依赖注入器”包。但它一直显示如下错误

(env) PS C:\Multi-Participants_Survey_Project-main-2\djangosurveybackend> pip install dependency-injector
Collecting dependency-injector
  Using cached dependency-injector-4.41.0.tar.gz (913 kB)
  Preparing metadata (setup.py) ... done
Collecting six<=1.16.0,>=1.7.0 (from dependency-injector)
  Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Building wheels for collected packages: dependency-injector
  Building wheel for dependency-injector (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [54 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build\lib.win32-cpython-312
      creating build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\errors.py -> build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\resources.py -> build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\schema.py -> build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\wiring.py -> build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\__init__.py -> build\lib.win32-cpython-312\dependency_injector
      creating build\lib.win32-cpython-312\dependency_injector\ext
      copying src\dependency_injector\ext\aiohttp.py -> build\lib.win32-cpython-312\dependency_injector\ext
      copying src\dependency_injector\ext\flask.py -> build\lib.win32-cpython-312\dependency_injector\ext
      copying src\dependency_injector\ext\__init__.py -> build\lib.win32-cpython-312\dependency_injector\ext
      copying src\dependency_injector\containers.pyi -> build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\providers.pyi -> build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\__init__.pyi -> build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\py.typed -> build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\containers.pxd -> build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\providers.pxd -> build\lib.win32-cpython-312\dependency_injector
      copying src\dependency_injector\ext\aiohttp.pyi -> build\lib.win32-cpython-312\dependency_injector\ext
      copying src\dependency_injector\ext\flask.pyi -> build\lib.win32-cpython-312\dependency_injector\ext
      copying src\dependency_injector\ext\__init__.pyi -> build\lib.win32-cpython-312\dependency_injector\ext
      running build_ext
      building 'dependency_injector.containers' extension
      creating build\temp.win32-cpython-312
      creating build\temp.win32-cpython-312\Release
      creating build\temp.win32-cpython-312\Release\src
      creating build\temp.win32-cpython-312\Release\src\dependency_injector
      "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\bin\HostX86\x86\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DCYTHON_CLINE_IN_TRACEBACK=0 -IC:\Multi-Participants_Survey_Project-main-2\djangosurveybackend\env\include -IC:\Users\truly\AppData\Local\Programs\Python\Python312\include -IC:\Users\truly\AppData\Local\Programs\Python\Python312\Include "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcsrc/dependency_injector/containers.c /Fobuild\temp.win32-cpython-312\Release\src/dependency_injector/containers.obj -O2
      containers.c
      src/dependency_injector/containers.c(33558): error C2039: 'curexc_traceback': is not a member of '_ts'
      C:\Users\truly\AppData\Local\Programs\Python\Python312\include\cpython/pystate.h(115): note: see declaration of '_ts'
      src/dependency_injector/containers.c(33561): error C2039: 'curexc_traceback': is not a member of '_ts'
      C:\Users\truly\AppData\Local\Programs\Python\Python312\include\cpython/pystate.h(115): note: see declaration of '_ts'
      src/dependency_injector/containers.c(34184): warning C4013: '_PyUnicode_Ready' undefined; assuming extern returning int
      src/dependency_injector/containers.c(36123): error C2039: 'gi_code': is not a member of 'PyGenObject'
      C:\Users\truly\AppData\Local\Programs\Python\Python312\include\cpython/genobject.h(31): note: see declaration of 'PyGenObject'
      src/dependency_injector/containers.c(36123): error C2039: 'gi_code': is not a member of 'PyGenObject'
      C:\Users\truly\AppData\Local\Programs\Python\Python312\include\cpython/genobject.h(31): note: see declaration of 'PyGenObject'
      src/dependency_injector/containers.c(37417): error C2039: 'ob_digit': is not a member of '_longobject'
      C:\Users\truly\AppData\Local\Programs\Python\Python312\include\cpython/longintrepr.h(87): note: see declaration of '_longobject'
      src/dependency_injector/containers.c(38290): error C2039: 'ob_digit': is not a member of '_longobject'
      C:\Users\truly\AppData\Local\Programs\Python\Python312\include\cpython/longintrepr.h(87): note: see declaration of '_longobject'
      src/dependency_injector/containers.c(38345): error C2039: 'ob_digit': is not a member of '_longobject'
      C:\Users\truly\AppData\Local\Programs\Python\Python312\include\cpython/longintrepr.h(87): note: see declaration of '_longobject'
      src/dependency_injector/containers.c(38486): error C2039: 'ob_digit': is not a member of '_longobject'
      C:\Users\truly\AppData\Local\Programs\Python\Python312\include\cpython/longintrepr.h(87): note: see declaration of '_longobject'
      src/dependency_injector/containers.c(38541): error C2039: 'ob_digit': is not a member of '_longobject'
      C:\Users\truly\AppData\Local\Programs\Python\Python312\include\cpython/longintrepr.h(87): note: see declaration of '_longobject'
      src/dependency_injector/containers.c(39078): error C2039: 'ob_digit': is not a member of '_longobject'
      C:\Users\truly\AppData\Local\Programs\Python\Python312\include\cpython/longintrepr.h(87): note: see declaration of '_longobject'
      error: command 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.38.33130\\bin\\HostX86\\x86\\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 dependency-injector
  Running setup.py clean for dependency-injector
Failed to build dependency-injector
ERROR: Could not build wheels for dependency-injector, which is required to install pyproject.toml-based projects

我不知道这是否与我当前的Python版本(3.12)有关。任何人都可以帮助我解决这个问题吗?

我尝试通过

pip install wheel
pip install pyproject-toml
pip install aiohttp
下载相关包,但仍然无法下载依赖注入器。我什至将下载命令更改为
pip3 install dependency-injector
pip install dependency-injector==4.41.0
,但它们都不起作用

python dependency-injection pip package pyproject.toml
2个回答
0
投票

安装轮子0.21.0 为我解决了 pip 安装轮==0.21.0


-1
投票

dependency-injector
目前支持编程语言Python 2.7、3.5 - 3.11。 尚不支持 Python 3.12

您可以安装受支持的 python 版本并使用虚拟环境来管理此类需要特定 python 版本的项目。

例如,您可以安装支持的Python 3.11,然后创建Python 3.11虚拟环境。然后你就可以在那个环境中

pip install dependency-injector

© www.soinside.com 2019 - 2024. All rights reserved.