dnf 拒绝安装 buildsys-build-rpmfusion-kerneldevpkgs-current

dnf 拒绝安装 buildsys-build-rpmfusion-kerneldevpkgs-current

dnf 抱怨内核开发版本不符合要求:

# dnf install buildsys-build-rpmfusion-kerneldevpkgs-current
Error: 
 Problem: conflicting requests
  - nothing provides kernel-devel-uname-r = 4.18.0-193.el8.x86_64 needed by buildsys-build-rpmfusion-kerneldevpkgs-current-11:30-5.el8.x86_64
(try to add '--skip-broken' to skip uninstallable packages)

但实际上已经安装了正确的版本:

# dnf list installed | grep kernel-devel
kernel-devel.x86_64                             4.18.0-193.19.1.el8_2                            @BaseOS                   
kernel-devel.x86_64                             4.18.0-193.28.1.el8_2                            @BaseOS

答案1

这些不是软件包所需的版本。

你有:

kernel-devel.x86_64                             4.18.0-193.19.1.el8_2                                              
kernel-devel.x86_64                             4.18.0-193.28.1.el8_2    

它要求:

kernel-devel-4.18.0-193.el8.x86_64

或者将其放入相同的格式:

kernel-devel.x86_64                             4.18.0-193.el8

你拥有的东西太新了。它需要CentOS 8 的kernel-devel软件包版本4.18.0-193,但您拥有的最旧版本是4.18.0-193.19.1CentOS 8.2 的版本。来自不受支持的存储库(例如 RPMFusion)的包可能会出现此问题,因为依赖项并不总是与受支持的存储库(或可能已添加的其他存储库)中的包匹配。如果这只是运行时需要的文件,那么您可以使用符号链接来绕过它,但在这种情况下,沿着这些路线做一些事情可能会让您陷入依赖地狱,从而破坏系统。有时,由于这个原因,这些存储库中的软件包无法安装。

kernel-devel您可以做的一件事是从源代码构建它,前提是您可以找到需要已安装的较新版本的版本。

相关内容