9

我使用 Zypper 包管理器在 openSUSE 系统上安装了 Python(参见下面的版本)。这给了我 Python 3.2,但有些包需要 Python 3.3。zypper update python3使用Python 3.2 进行更新。如何升级到 3.3,最好使用包管理器并重用我的其余工作 Python 安装(站点包、pip ...)?

openSUSE 12.2 (x86_64)
VERSION = 12.2
CODENAME = Mantis
4

2 回答 2

9

您可以在此处添加devel:languages:python:Factory存储库或使用1 单击安装和 Python 3.3.2 版本表单(例如来自上述存储库)。 (显示其他版本->openSUSE 12.2->显示不稳定的包->1 点击安装)

要仅与zypper一起使用(无 GUI),您可以按如下方式添加存储库:

sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/python:/Factory/openSUSE_12.2/devel:languages:python:Factory.repo

然后,要使用该 repo 中的包,您应该为 repo 赋予更高的优先级(在这种情况下,更高的优先级意味着更低的数字 0=high,100=low)。要知道 repo id 使用zypper lr并在输出中搜索 repo 编号。然后使用以下命令更改优先级:

 sudo zypper mr -p priority repo_number

如果您的其他存储库的标准优先级为 99,您可以使用例如 50 作为优先级。
然后用于zypper update python3更新 python。

于 2013-09-18T14:43:26.987 回答
4

您可以使用 pyenv 按照以下说明进行操作:

# Step 1. Install pyenv

git clone https://github.com/pyenv/pyenv.git ~/.pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.bashrc

# Step 2. Install missing headers for all the Python modules to be built

sudo zypper install readline-devel sqlite3-devel libbz2-devel

# Step 3. Install the desired Python version

pyenv install 3.6.3

引用自https://gist.github.com/antivanov/01ed4eac2d7486a170be598b5a0a4ac7

于 2018-01-25T14:30:55.437 回答