用pip安装模块失败,可以编辑版本吗?

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

我正在尝试安装 pywallet

pip install pywallet

这在某些时候会失败:

  Downloading protobuf-3.0.0a3.tar.gz (88 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-_xihs08_/protobuf_2395cbc163b34a7cb79f530d9bda1b24/setup.py", line 29, in <module>
          from distutils.command.build_py import build_py_2to3 as _build_py
      ImportError: cannot import name 'build_py_2to3' from 'distutils.command.build_py' (/usr/lib/python3.12/site-packages/setuptools/_distutils/command/build_py.py)
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

我知道这不是 pip 错误,而是模块内的依赖项无法构建。 我在某处读到这是由于没有将版本修复为特定版本,建议是找到罪魁祸首并编辑 setup.py。

但是 - 据我所知,安装失败后,所有内容都被清理了。 我可以以某种方式下载这个东西,并手动编辑依赖项吗?

pip download pywallet
失败并出现相同的错误。

python pip module
1个回答
0
投票

这让我想起了“旧皮袋里不能装新酒”这句话。您正在使用 Python 3.12 作为最后一次更新于 2018 年的包。

查看 PyPi,pywallet 的稳定版本支持 Python 2.7、3.4 - 3.6。这可能是依赖性问题的原因。

如果您必须使用此包,您可能需要将 Python 降级到受支持的版本,或者最好(IMO)使用类似的包或库。

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