更改新创建的 RPM 的存储位置

更改新创建的 RPM 的存储位置

对创建 RPM 相当陌生,但我已经掌握了基础知识。我正在编写基础脚本,并且有一个要求,即我不能接受存储新创建的 RPM 的默认位置。

通常,创建的 RPM 存储在 ~/rpmbuild/RPMS 内

我需要将它们保存到 /centralStorage/Some/New/Location。

RPM 构建器正在寻找什么变量来了解新创建的 RPM 的保存位置?我似乎无法在文档中找到如何手动更改此设置。

答案1

这是使用_topdir宏设置的,例如,

%_topdir /home/ed/mybuild

您可以使用相关宏对此进行微调。在 Fedora 系统上,宏位于 中/usr/lib/rpm/macros,包括:

#       The directory where newly built binary packages will be written.
%_rpmdir                %{_topdir}/RPMS

所以你可以只覆盖_rpmdir.

通常我只使用设置$HOME/.rpmmacros,其他人使用命令行选项--define,例如,

rpmbuild --define '_topdir /Location/On/Storage/' -bb myNewServer.spec

进一步阅读:

相关内容