如何使用pyenv安装python 3.7.0?

问题描述 投票:9回答:3

我尝试使用命令“pyenv install 3.7.0”安装并获得如下错误

Downloading Python-3.7.0.tar.xz...
-> https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
Installing Python-3.7.0...
ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?

Please consult to the Wiki page to fix the problem.
https://github.com/pyenv/pyenv/wiki/Common-build-problems

BUILD FAILED (Ubuntu 14.04 using python-build 20180424)

我已经检查了https://github.com/pyenv/pyenv/wiki/Common-build-problems的解决方案并尝试过

CFLAGS=-I/usr/include/openssl \
LDFLAGS=-L/usr/lib64 \
pyenv install -v 3.7.0

我再次面临同样的错误

The Python ssl extension was not compiled. Missing the OpenSSL lib?

还试图安装低于3.7的python版本,所有版本都安装没有错误。我在这里缺少任何依赖包或版本更新。我有openssl版本

OpenSSL 1.0.1f 6 Jan 2014
python-3.x pyenv python-3.7
3个回答
2
投票

我在这里缺少任何依赖包或版本更新。

是的,不幸的是有。 Python 3.7.0需要OpenSSL 1.0.2。我找不到比dev邮件列表更好的来源。到目前为止,我一直没有成功使用Python 3.7.0在Ubuntu 14.04上工作,因为安装正确版本的OpenSSL并且没有冲突是一招。

Python 3.7:要求OpenSSL> = 1.0.2

https://mail.python.org/pipermail/python-dev/2018-January/151718.html


7
投票

您可以通过首先通过命令安装[email protected]来安装它

    brew install '[email protected]'

你可以使用以下命令安装python3.7:

    CONFIGURE_OPTS="--with-openssl=$(brew --prefix [email protected])" pyenv install 3.7.0

或者,如果您不想为openssl安装任何特定版本,则可以使用以下命令来执行openssl包。

    CONFIGURE_OPTS="--with-openssl=$(brew --prefix openssl)" pyenv install 3.7.0

-1
投票

这个方法适用于mac

brew install zlib
ln -s /usr/local/Cellar/zlib/1.2.11/include/* /usr/local/include
pyenv install 3.7.3

this three cmd lines code can easy deal with your problem. gold luck

1.2.11 is your zlib version that is your installed zlib version

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