error: Macro % has illegal name (%define) whenever I run yum

error: Macro % has illegal name (%define) whenever I run yum

每当我 运行 yum 时,我都会得到这个 error: Macro % has illegal name (%define) 这出现了 4 次。我不知道它是从哪里来的。我试过重新安装 yum,没有用。任何类型的 yum 命令都会发生这种情况,例如 yum clean all、yum search、yum list installed 等。有人知道这个错误在哪里,所以我可以更正它吗?

我用谷歌搜索了一下,似乎在 redhat 网站上有一个解决方案,但我没有订阅来查看他们的解决方案。 https://access.redhat.com/solutions/70201

预定义的宏文件似乎有语法错误;类似于:

%define something 1

而不是预期的语法:

%something 1

在这些文件中寻找这样的 %define:

  • ~/.rpmmacros
  • /etc/rpm/macros
  • /etc/rpm/macros.*

...如果失败,可能更改了打包文件:

  • /usr/lib/rpm/macros
  • /usr/lib/rpm/macros.d/*