【发布时间】:2021-11-14 21:06:16
【问题描述】:
我在 Ubuntu 18.04 上安装了 Python3.6 和 Python3.8。当我执行 python3 -V 时,我得到了 python3.8.0,这是正确的。这是我目前的默认 Python。
我在安装 Python3.6 和 Python3.8 时使用了 Ubuntu 18.04 软件包存储库。我刚刚从源代码构建了 Python3.10,现在我想将其设置为默认值。规范的更改方式是使用--update-alternatives,但是我在安装Python3.6和Python3.8时并没有这样做,所以当我执行时:
update-alternatives --query python
update-alternatives: error: no alternatives for python
Python3.8 在 /usr/bin/python3.8,Python3.10 在 /usr/local/bin/python3.10。
根据我在网上看到的,我应该这样做:
$ sudo update-alternatives --install /usr/local/bin/python python /usr/bin/python3.8
$ sudo update-alternatives --install /usr/local/bin/python python /usr/local/bin/python3.10
然后我使用 sudo update-alternatives --config python 选择默认值。
因为我目前没有任何替代方案,但我能够以某种方式从 Python3.6 切换到 Python3.8(我不记得如何),所以上面的命令会导致任何问题吗? 3.8 (/usr/bin/) 与 3.10 (/usr/local/bin/) 的不同位置是否存在问题,以及 3.10 的符号链接进入 /usr/local/bin/ 会产生什么影响已经找到了。
当然,我可以尝试一下,但如果出现问题,我不知道如果出错了如何退出。我在网上得到了很多不同的信息。
感谢您的帮助。
【问题讨论】:
-
update-alternatives主要用于发行版提供的软件包。对于本地安装的东西,尝试在/usr/local/bin中添加一些额外的符号链接,并确保它在$PATH中更早 -
请注意,还有像
pydoc和pip这样的工具需要担心。出于这个原因,我建议养成始终使用pythonX.Y -m pip的习惯,但是如果您正在执行 /usr/local 安装,您可以根据需要添加额外的符号链接。
标签: python python-3.x linux