我有一个“执行”rpmbuild 的 tcl 脚本。这样做时,rpmbuild 使用的“topdir”是错误的。我的主目录中有一个 .rpmmacros 文件,如果我手动调用 rpmbuild,它工作正常,即。 “topdir”不是默认的。
我添加了一个[执行rpmbuild“--showrc”]在 tcl 脚本中检查值topdir它显示“-14: _topdir %{_usrsrc}/redhat”,这是默认值。
有人可以解释一下为什么会出现这种情况以及如何解决吗?
我不想用 --define 指定它,因为它实际上是在 makefile 中完成的,我不想碰它(如果没有其他选择,我会这样做)。
有两种方法可以更改默认的 rpmbuild topdir:
-
每个用户:通过在 $HOME/.rpmmacros 中配置 RPM topdir
%_topdir %{getenv:HOME}/rpmbuild
-
每个项目:通过在 Makefile 或命令行中配置 RPM topdir
rpmbuild --define '_topdir build' -ba package.spec
注意:在这两种情况下,您都需要确保您的 topdir 目录具有适当的目录(BUILD、SRPM、RPM、SPECS 和 SOURCES)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)