【问题标题】:How to update python to the latest version on ArchLinux?如何在 ArchLinux 上将 python 更新到最新版本?
【发布时间】:2022-12-19 00:19:29
【问题描述】:

如何通过 pacman 在 ArchLinux 上安装最新的 python 版本3.11.0

ArchLinux wiki说当前版本是3.10,虽然python 3.11已经正式发布了。

当运行sudo pacman -Syyu p时,我受到warning: python-3.10.8-3 is up to date的欢迎。

难道我做错了什么?

【问题讨论】:

  • 必须有人实际完成为 Arch 打包 Python 3.11 的工作,然后需要测试 Arch 中的所有其他包才能使用它。所有这些事情都需要时间。
  • 如果你想要一个可以控制相互依赖性的发行版和包管理器,让你安装更新的工具(或旧的,或修补的,等等),同时仍然为需要它们的东西保留其他版本,我可能会让你感兴趣NixOS?请注意,如果您愿意,也可以在 Arch 之上安装 Nix(包管理器本身)。
  • (...并且只要所讨论的一切都适用于全部Arch 上的软件包,而不是特定于 Python 或编程工具,我建议这个问题在 Unix & Linux 而不是这里更热门)
  • 谢谢@CharlesDuffy,我会看看 NixOS。另外,感谢您向我指出 Unix StackExchange。下次会在那里发帖。
  • 我建议使用pyenv 来安装最新版本。为了发展,这是最好的。

标签: python linux archlinux pacman-package-manager


【解决方案1】:

使用像“yay”这样的 AUR 来获取新的 python3.11。

如果您还没有在您的系统上安装 yay,请按照这些 instructions 设置 yay

在系统中设置 yay 后运行此命令:

yay -S python311

【讨论】:

  • 谢谢,现在python311已经安装好了。但是我该如何运行呢? python311返回command not foundpython -V返回Python 3.10.8
  • @RuanMolinari 您需要将新安装的 python 添加到路径中。您可以通过将 export PATH=”$PATH:/usr/local/bin/python311” 添加到您的 .bashrc 文件来做到这一点
【解决方案2】:

您可以使用 pyenv 独立于发行版的包管理器安装 Python 的多个版本和实现。

  1. 使用sudo pacman -S pyenv 安装 pyenv。
  2. 设置你的 shell 以使用 pyenv https://github.com/pyenv/pyenv#set-up-your-shell-environment-for-pyenv
  3. 安装您选择的 Python 版本(请注意,CPython 将从源代码构建)。
    pyenv install -l # This will list all available versions
    pyenv install 3.11.1 # This will install CPython 3.11.1
    
    1. 选择 Python 版本作为默认版本。
    pyenv shell 3.11.1 # Use this version only for this shell session
    pyenv local 3.11.1 # Use this version only when you are in this directory
    pyenv global 3.11.1 # Use this version as the default version
    

    请注意,这不会替换位于 /usr/bin/python 的包管理器安装的 Python。 Pyenv 只会更改 PATH 以将 python 指向其 Python 二进制文件。

【讨论】:

    【解决方案3】:

    您可以使用以下命令将 python 更新到 ArchLinux 上的最新版本:

    pacman -Syu python

    【讨论】:

    • 这不会安装 3.11。核心仓库中的最新版本是 3.10。
    最近更新 更多