Python 2.7.12 在 PyEnv 中 Ubuntu 20.04

Python 2.7.12 on Ubuntu 20.04 in PyEnv

我在 Python 2.7.12 上有一些 运行 的遗留网站,并且刚刚将我的开发机器更新到 Ubuntu 20.04。

我正在尝试让 PyEnv 安装 Python 2.7.12,但这似乎取决于在 Ubuntu 20.04 中删除的 libssl1.0-dev。

我收到错误:

Installing Python-2.7.12...
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 20.04 using python-build 20180424)

遵循建议here我运行:

sudo apt-get remove libssl-dev
sudo apt-get update
sudo apt-get install libssl1.0-dev

我收到错误:

E: Package 'libssl1.0-dev' has no installation candidate

有什么办法吗?如果可以,请问如何?

谢谢。

正如 Klaus 提到的,您可以使用 docker 图片作为 python 2.7, but ssl library is very crucial, so it's weird that it has no installation candidate. The package libssl-dev for focal is listed here

我找不到让 PyEnv 与 Python 这样的旧版本一起工作的方法,因此选择使用 Klaus 和 Rafal 所建议的 Docker。谢谢。

对于其他为此苦苦挣扎的人,here is a handy overview of the process

您可以从以前的 Ubuntu 18.04 版本安装 libssl1.0-dev:

wget -P /tmp/ http://security.ubuntu.com/ubuntu/pool/main/o/openssl1.0/libssl1.0-dev_1.0.2n-1ubuntu5.5_amd64.deb
wget -P /tmp/ http://ftp.osuosl.org/pub/ubuntu/pool/main/o/openssl1.0/libssl1.0.0_1.0.2n-1ubuntu5.5_amd64.deb
apt install /tmp/libssl1.0.0_1.0.2n-1ubuntu5.5_amd64.deb
apt install /tmp/libssl1.0-dev_1.0.2n-1ubuntu5.5_amd64.deb

可行,但不推荐这种方式。因为 libssl1.0 包以后不会收到安全更新!也许 python 2.7.17 适合你?你可以通过 apt 安装它:

apt install python2