我有一个'exec'rpmbuild的tcl脚本。这样做时,rpmbuild使用的“topdir”是错误的。我的主目录中有一个.rpmmacros文件,如果我手动调用rpmbuild,它可以正常工作,即。 “topdir”不是默认值。
我在tcl脚本中添加了[exec rpmbuild“--showrc”]来检查topdir的值,它说'-14:_topdir%{_ usrsrc} / redhat'是默认值。
有人可以向我解释这种情况的原因以及如何解决吗?
我宁愿不必使用--define指定它,因为它实际上是在makefile中完成的,并且我不想触碰它(如果没有其他选择,我会这样做)。
最佳答案
有两种方法可以更改默认的rpmbuild topdir:
%_topdir %{getenv:HOME}/rpmbuild
rpmbuild --define '_topdir build' -ba package.spec
注意:在两种情况下,您都需要确保您的topdir目录具有适当的目录(BUILD,SRPM,RPM,SPECS和SOURCES)
关于tcl - 当从tcl调用rpmbuild时,为什么将topdir设置为其默认值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/416983/