【问题标题】:pyenv BUILD FAILED while trying (pyenv install -v 3.9.0) on wsl2 ubuntu 20.04在wsl2 ubuntu 20.04上尝试(pyenv install -v 3.9.0)时pyenv BUILD FAILED
【发布时间】:2021-03-23 22:04:12
【问题描述】:

已解决:解决方案是我需要 zlib1g-dev

这是 pyenv 产生的错误

Traceback (most recent call last):
  File "<frozen zipimport>", line 520, in _get_decompress_func
ModuleNotFoundError: No module named 'zlib'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<frozen zipimport>", line 568, in _get_data
  File "<frozen zipimport>", line 523, in _get_decompress_func
zipimport.ZipImportError: can't decompress data; zlib not available

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 6, in <module>
  File "/tmp/python-build.20201212114143.1082/Python-3.9.0/Lib/runpy.py", line 206, in run_module
    mod_name, mod_spec, code = _get_module_details(mod_name)
  File "/tmp/python-build.20201212114143.1082/Python-3.9.0/Lib/runpy.py", line 147, in _get_module_details
    return _get_module_details(pkg_main_name, error)
  File "/tmp/python-build.20201212114143.1082/Python-3.9.0/Lib/runpy.py", line 111, in _get_module_details
    __import__(pkg_name)
  File "<frozen zipimport>", line 241, in load_module
  File "<frozen zipimport>", line 709, in _get_module_code
  File "<frozen zipimport>", line 570, in _get_data
zipimport.ZipImportError: can't decompress data; zlib not available
Traceback (most recent call last):
  File "/tmp/python-build.20201212114143.1082/Python-3.9.0/Lib/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/tmp/python-build.20201212114143.1082/Python-3.9.0/Lib/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/tmp/python-build.20201212114143.1082/Python-3.9.0/Lib/ensurepip/__main__.py", line 5, in <module>
    sys.exit(ensurepip._main())
  File "/tmp/python-build.20201212114143.1082/Python-3.9.0/Lib/ensurepip/__init__.py", line 210, in _main
    return _bootstrap(
  File "/tmp/python-build.20201212114143.1082/Python-3.9.0/Lib/ensurepip/__init__.py", line 129, in _bootstrap
    return _run_pip(args + [p[0] for p in _PROJECTS], additional_paths)
  File "/tmp/python-build.20201212114143.1082/Python-3.9.0/Lib/ensurepip/__init__.py", line 38, in _run_pip
    return subprocess.run([sys.executable, "-c", code], check=True).returncode
  File "/tmp/python-build.20201212114143.1082/Python-3.9.0/Lib/subprocess.py", line 524, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/tmp/python-build.20201212114143.1082/Python-3.9.0/python', '-c', '\nimport runpy\nimport sys\nsys.path = [\'/tmp/tmpk898xfhs/setuptools-49.2.1-py3-none-any.whl\', \'/tmp/tmpk898xfhs/pip-20.2.3-py2.py3-none-any.whl\'] + sys.path\nsys.argv[1:] = [\'install\', \'--no-cache-dir\', \'--no-index\', \'--find-links\', \'/tmp/tmpk898xfhs\', \'--root\', \'/\', \'--upgrade\', \'setuptools\', \'pip\']\nrunpy.run_module("pip", run_name="__main__", alter_sys=True)\n']' returned non-zero exit status 1.
make: *** [Makefile:1254: install] Error 1

我在谷歌上搜索时没有发现任何内容,也不知道发生了什么。 我所做的步骤是,首先安装 pyenv 安装程序并运行该脚本,然后尝试运行(pyenv install -v 3.9.0)

系统确实安装了 python3.8 并且 pyenv 似乎知道它 但它仍然不允许我安装 3.9.0

编辑:为了让 pyenv 知道我这样做的 python 的系统版本,我也应该加入它(sudo ln -s /usr/bin/python3 /usr/bin/python)。 另一件事是我还尝试使用名为 asdf 的工具安装 3.9.0 并导致相同的错误

EDIT2:我似乎从回溯中丢失了 zlib,但我在 ubuntu 上并且确实安装了 zlib1g,从我查找的内容来看,这就是 zlib 在 ubuntu 20.04 上的内容,我将尝试在 zlib 上查找更多信息,看看是否我需要安装其他东西

【问题讨论】:

  • 不要发布代码/错误文本的屏幕截图,使用代码块以便人类阅读。 stackoverflow.com/editing-help
  • @MikeRoll 是的,我的错我是新来询问 stackoverflow 问题,所以请原谅我,如果这就是解决问题的方法。现在将更新问题,谢谢
  • 我认为您必须在日志中进一步查看最后 10 行以上的编译器实际错误 - 您刚刚从正在调用的 python 代码中获得了部分调用堆栈它。
  • @Rup 会做我会查看它提供的日志文件,如果我无法从那里弄清楚,我会进行编辑以包含更多错误。感谢您的提示
  • @Rup 这正是它哈哈只需要 zlib1g-dev 而不是 zlib1g。谢谢指点

标签: python-3.x linux windows-subsystem-for-linux pyenv


【解决方案1】:

我在尝试在 WSL2/Ubutnu18 上安装带有 asdf(使用与 pyenv 相同的后端)的 Python 3.8 时遇到了类似的问题,并且安装 zlib1g-dev 不足以解决问题作者所述的问题。

因此,作为更通用的解决方案,我发现安装 pyenv 为 Ubuntu 推荐的所有依赖项确实解决了 asdf 的问题(我也怀疑 pyenv)。不同操作系统的依赖可以在这里找到:https://github.com/pyenv/pyenv/wiki#suggested-build-environment

我希望这对其他人有用!

PS:此资源可能对类似问题也有用:https://github.com/pyenv/pyenv/wiki/Common-build-problems

【讨论】:

  • 第一个 github 链接就像一个魅力。
猜你喜欢
  • 1970-01-01
  • 2019-01-04
  • 2020-08-20
  • 1970-01-01
  • 1970-01-01
  • 2018-12-16
  • 2016-09-10
  • 2022-12-20
相关资源
最近更新 更多