使用rpmbuild时如何更改RPM的目的地

时间:2018-06-19 20:08:53

标签: centos redhat rpm rpmbuild rpm-spec

我正在从目录foo中的规范文件使用rpmbuild构建RPM,但是每当我运行rpmbuild时,它将在我的主目录~/rpmbuild/RPMS中创建rpm。

如何更改RPM的目的地,并使整个rpmbuild目录位于foo中?我尝试将Buildroot设置为foo,但这只是更改了构建临时文件而不是最终rpm的位置。任何帮助,将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:3)

“最大RPM”手册(有时确实是过时的)中的信息仍是最新的。您需要设置_topdir值才能移动整个目录树:

除了更改~/.rpmmacros之外,您还可以使用-D _topdir /path/to/alternate/location来切换目录树的位置。

如果要移动特定的子目录,请参见rpmrc File Entries并搜索topdir引用以获取其他RPM宏名称。请注意,由于某些原因,所有这些变量名称中都缺少前导下划线_

答案 1 :(得分:0)

作为上述可行答案的替代方法,在spec文件本身中设置输出目录%define _rpmdir /path/to/outputdir对我有用。

相关问题