我正在尝试构建并签署RPM。 我在我正在构建的位置/ path / to / macrodir /中创建了我的.rpmmacro文件 然后我使用--define与_topdir引用/ path / to / macrodir /
如果我在没有给出--sign的情况下构建RPM;工作正常。
rpmbuild --define "_topdir /path/to/macrodir" -bb spec
.rpmmacro位于macrodir中并包含
%_signature gpg
%_gpg_name Name (Comment) <emailid>
%_gpgpath pathtognupgfolder
%_gpgbin locationofgpgexec
如果我包含--sign然后抛出错误
rpmbuild --define "_topdir /path/to/macrodir" -bb --sign spec
错误:您必须在宏文件中设置“%_gpg_name”
我无法看到我做错了什么。有什么建议?
答案 0 :(得分:5)
正如comment中提到的OP,通过%gpg_name
标记将--define
宏设置为rpm
/ rpmbuild
/ rpmsign
有效
rpm --define "_gpg_name <your email or name>" --addsign <RPM to sign>
答案 1 :(得分:4)
关于如何签署自定义rpm pacakge,请按此detailed writeup。
我遇到了一个不同的问题,当运行以下命令时,它没有抱怨找不到rpm
个文件。
rpm --addsign gyum-2.0-5.FC3.i386.rpm
安装rpmsign
包后,一切正常。
答案 2 :(得分:0)
至少在我的机器上,该文件名为.rpmmacros(带有s)。