ubuntu安装python另一个版本_如何使用apt-get安装不同的Python版本?

问题描述

我如何使用apt-get安装不同版本的Python?

很显然,我意识到我可以使用源码tar安装,但是我宁愿不从源安装,而是使用包管理器,因为它就是这样。当然,某些地方可以为最新的Python版本构建.deb文件(为什么python.org不在我身边),我可以参考。

我需要做些什么来引用它们,以及在升级到下一个版本时可能会产生哪些问题?

如果除了从源代码构建之外没有办法,是否有一个可以安装的(伪)包,它将提供所需的所有依赖关系,而无需单独查找和安装每个包?所以我不明白:

The necessary bits to build these optional modules were not found:

_bz2 _curses _curses_panel

_dbm _gdbm _lzma

_sqlite3 _ssl _tkinter

readline zlib

最佳解决办法

Felix Krull在https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa上为许多Ubuntu发行版提供基本上任何版本的Python(严格来说,有2.3.7版本生动的…)。

照常做:

sudo add-apt-repository ppa:deadsnakes/ppa

sudo apt-get update

sudo apt-get install python3.5

它不会覆盖仍然符号链接为python3的现有python3.4。

不要更改符号链接!显然很多系统功能在python3.5下无法正常工作。

我试过这个,之后无法打开终端,软件更新,…

cd /usr/bin

sudo rm python3

升级至Wily将使meta-package python3指向python3.5。我不希望有任何破坏,但此时不再需要外部存储库。所以为了确保安全,您可以在升级之前清除PPA。

次佳解决办法

步骤是:

sudo apt-get install libssl-dev openssl

wget https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz

tar xzvf Python-3.5.0.tgz

cd Python-3.5.0

./configure

make

sudo make install

要检查是否安装了python,请键入python3.5 else:

sudo ln -fs /opt/Python-3.5.0/Python /usr/bin/python3.5

第三种解决办法

据我所知,至少在Docker容器中,可以明确地指出apt-get python 3。

首先我遇到了一个带有容器的Ubuntu容器:

docker run -it --rm ubuntu:latest bash

那么由于某种原因,它需要更新一些Ubuntu的东西,所以我(容器内):

apt-get update && apt-get install -y build-essential git libjpeg-dev

然后我简单地安装了python3,它似乎自动得到python 3.5:

apt-get install python3

apt-get install python3-pip

并测试点子作品是否可以下载一些东西:

pip3 install tensorflow

一切似乎都适合我。

重要提示:似乎如果你已经安装了python 3.4,那么apt-get install python3不起作用,因为它说你已经拥有它了。这似乎是我的问题之一,因为我从张量流的docker映像(特别是gcr.io/tensorflow/tensorflow:latest-devel-py3)开始,并且该映像中的某些内容(我认为它已经具有python 3.4,但它可能是其他内容)不允许我更新我的python以获得python 3.5。

注意:也可以只安装Anaconda。对于一个可以做的码头例子:

docker pull continuumio/anaconda3

docker run -i -t continuumio/anaconda3 /bin/bash

这个解决方案安装python 3.6,但我相信如果你看看它,你可以得到python 3.5,如果这就是你想要的。

注意:除非你使用docker,否则你应该使用像虚拟env或conda /anaconda这样的虚拟环境。只是想提醒人们。

第四种办法

只需按照以下步骤(测试):

第1步 – 安装必需的软件包

在安装Python之前使用以下命令来安装Python的先决条件。

sudo apt-get install build-essential checkinstall

sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

第2步 – 下载Python 3.5.2

使用python官方网站下面的命令下载Python。您也可以下载最新版本来代替以下指定的内容。

cd /usr/src

sudo wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz

现在提取下载的软件包。

sudo tar xzf Python-3.5.2.tgz

第3步 – 编译Python源代码

使用下面的一组命令,使用altinstall在您的系统上编译python源代码。

cd Python-3.5.2

sudo ./configure

sudo make altinstall

make altinstall用于防止替换默认的python二进制文件/usr/bin/python。

第4步 – 检查Python版本

使用下面的命令检查安装的python的最新版本。

$ python3.5 -V

Python 3.5.2

第五种办法

有许多更新的python发行版可通过Ubuntu Packages中列出的apt-get进行安装

作为示例,以下版本当前可用:

可用性随着Ubuntu发行版的不同而有所不同。例如,3.5可用于Xenial,Yakkety和Zesty,3.6可用于Yakkety和Zesty,但如果未启用,则必须启用Universe repository才能通过apt-get获取它们。要检查您的Ubuntu版本的可用性,请检查上面的链接。

快速浏览表明this answer也是有效的,因为即使对于Trusty,PPA也有3.6。

参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值