26

我已经在我的系统上安装了 pyenv,并且命令运行pyenv install --list良好。但是当我使用 下载一些 Python 版本时pyenv install 2.7.11,结果如下:

Downloading Python-2.7.11.tgz...
-> https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz
error: failed to download Python-2.7.11.tar.gz

BUILD FAILED (Ubuntu 15.04 using python-build 20160509)

我在官方Common build questions上没有发现任何类似的问题。

pyenv不是没有赶上新的 Ubuntu 更新?

4

4 回答 4

46

该命令pyenv install -v 2.7.11给了我类似的错误。

安装 pyenv 要求解决了我的问题:

sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev

(见https://github.com/pyenv/pyenv/wiki/Common-build-problems

然后 :

pyenv install 2.7.11
于 2017-04-14T20:38:40.613 回答
1

要使用 安装 python pyenv,该命令pyenv install -v 2.7.11可能会显示比pyenv install 2.7.11. 所以我很容易找到错误。这次我得到了

curl: (77) error setting certificate verify locations: CAfile:
/etc/pki/tls/certs/ca-bundle.crt
CApath: none

这个问题已经在curl: (77) 错误中解决了

# sudo apt-get install ca-certificates

问题是 curl 期望证书位于路径中/etc/pki/tls/certs/ca-bundle.crt,但找不到它,因为它位于路径/etc/ssl/certs/ca-certificates.crt中。

通过运行将我的证书复制到预期的目的地

sudo cp /etc/ssl/certs/ca-certificates.crt /etc/pki/tls/certs/ca-bundle.crt

为我工作。如果目标目标不存在,则需要通过运行创建文件夹

sudo mkdir -p /etc/pki/tls/certs

如果需要,修改上述命令以使目标文件名与 curl 预期的路径匹配,即替换/etc/pki/tls/certs/ca-bundle.crt为错误消息中“CAfile:”之后的路径。

于 2016-05-14T16:17:24.107 回答
0

默认安装 curl 不支持 https 协议。您可以使用“curl --version”进行检查。你可以找到http但没有https。

所以你需要重新安装 curl 参考如何安装 curl 和 libcurl

./configure --prefix=$YOUR_DIR --with-ssl
make
make install

或查找安装 ssl 的位置,例如 /opt/OpenSSL

./configure --with-ssl=/opt/OpenSSL

进行安装

如何安装 curl 和 libcurl

于 2018-05-15T14:33:30.457 回答
0

我面临着类似的问题。我正在使用 Fedora 29 并尝试安装 python 2.7.5。下面是错误输出。

BUILD FAILED (Fedora 29 using python-build 1.2.9-35-gb6109093)
检查或清理 /tmp/python-build.20190405111845.17497 的工作树
./python -E -S -m sysconfig --generate-posix-vars找不到平台相关库考虑将 $PYTHONHOME 设置为 [:] make: *** [Makefile:464: pybuilddir.txt] 分段错误(核心转储)

我正在寻找解决方案,然后偶然发现了这个线程。. 其中说:--

问题是 Python < 2.7.15 中长期存在的问题,最近由最近的编译器触发。他们在 3.x 中修复它,并向后移植到 2.7.15。因此,与其只是收集补丁,不如使用交叉编译补丁将我们的 2.x 版本更新到 2.7.15。我有点害怕这种暗示(有时 2.7.x 上的 ssl 证书问题)。

我尝试安装 2.7.15pyenv install 2.7.15并且安装时没有错误。

于 2019-04-05T06:24:35.553 回答