dnf 什么版本需要 foo 包?

dnf 什么版本需要 foo 包?

我如何找出哪些软件包有建造对某些包的要求foo?我知道以下命令

dnf repoquery --alldeps --recursive --whatrequires foo

为了查询所有对 package 有要求的包foo。但是,带有建造仅要求未在那里列出。我怎样才能列出这样的包呢?

答案1

虽然构建需求确实没有存储在最终的 RPM 中(正如 jsbillings 指出的),但 dnf 在过去几年中得到了改进,因此您现在可以实际查询构建需求。

dnf repoquery '--disablerepo=*' '--enablerepo=*-source' --arch=src \
      --whatrequires <provide>

来源:示例DNF命令参考(在该部分的最后)

答案2

构建需求不存储在RPM 元数据非源 RPM,因此 dnf 无法搜索到它们。您必须查看用于构建 RPM 的 .spec 文件才能找到 BuildRequires: 标签。

相关内容