RHEL7.7:python3 与 python3-devel 版本不兼容

RHEL7.7:python3 与 python3-devel 版本不兼容

首先,我不太熟悉 RedHat/rpm 发行版系统,私下里更喜欢 Debian 类型。在我管理的一台服务器上从 RHEL7.4 更新到 RHEL7.7 后,我收到以下消息:

Error: Package: python36-devel-3.6.8-2.el7.ius.x86_64 (@ius)
           Requires: python36-devel-3.6.8-2.el7.ius
           Removing: python36-3.6.8-2.el7.ius.x86_64 (@ius)
               python36 = 3.6.8-2.el7.ius
           Obsoleted By: python3-3.6.8-10.el7.x86_64 (rhel-7-server-rpms)
               python36 = 3.6.8-10.el7

我是这样理解的:我安装了 python36-devel-3.6.8-2,它依赖于 python36-3.6.8-2,后者也已安装(两者均是前段时间从 IUS 安装的)。但是,yum 想要将 python36-3.6.8-2 从当前的 RHEL7.7 发行版升级到 python3-3.6.8-10,但它无法做到,因为这会破坏对 python36-devel-3.6.8-2 的依赖关系

我已经搞定了

$ sudo yum clean metadata
$ sudo yum install epel-release ius-release
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
Package epel-release-7-12.noarch already installed and latest version
Package ius-release-2-1.el7.ius.noarch already installed and latest version
Nothing to do
$ sudo yum update
[ ...error message like above... ]
Enable all repositories and try again? [y/N]: y
[ ...error message like above... ]

所以我的问题是:如何同步我的 python(-devel)包?

注意:我还使用带有 mod_wsgi 的 Apache。由于我的所有 Python3 内容都在虚拟环境中,因此我可以从头开始安装 Python3,并使该环境中的所有内容(包括 mod_wsgi)都干净整洁。但我担心这会导致 Apache 和 mod_wsgi 之间的兼容性问题。是的,我需要 python3-devel,因为我还使用 C 扩展。

答案1

这与 epel 或 ius 无关。这解决了它:

$ sudo subscription-manager repos --enable rhel-7-server-optional-rpms

相关内容