4

当我在 Fedora 中安装一些 python 包时,有两种方法:

  • 采用dnf install python-package
  • 采用pip install package

我注意到即使我曾经dnf update让我的 Fedora 是最新的,当我使用 pip 时,它仍然告诉我类似

pip 是旧版本,请使用 pip 更新

我猜 dnf 包管理与 python-pip 包管理不同。

那么更推荐哪一个来安装 python 包呢?

4

1 回答 1

11

引自Gentoo Wiki

重要的是要了解使用 pip 安装的软件包不会被 Portage 跟踪。这是通过emerge 命令以外的方式安装任何软件包的情况。安装 Portage 树中可用的 Python 包,然后使用 pip 安装相同的包时,可能会产生冲突。

确定哪个包管理器最适合用例:对 Python 包使用emerge 或 pip,但不能同时使用两者。有时某些 Python 包在 Portage 树中不可用,在这些情况下,唯一的选择是使用 pip。明智并做出正确的选择!

对于当今几乎所有的包管理器来说都是如此。如果您正在使用仅存在于 中的软件包或某些软件包版本pip,请使用它,但不要尝试dnf. 这样做不仅会导致文件冲突,而且(很可能)会破坏包管理器对系统的了解,这通常会导致主要的包管理问题。

其他解决方案将pip在用户模式下使用,没有 root 权限,这会将相关内容安装到您的主目录中。

再说一次,使用pip or dnf都可以,但不要将这两个包管理器混合在一起。

于 2015-11-07T16:18:36.367 回答