6

我正在尝试构建并签署 RPM。我在我正在构建 /path/to/macrodir/ 的位置创建了我的 .rpmmacro 文件,然后我使用 --define 和 _topdir 引用 /path/to/macrodir/

如果我构建 RPM 而不给出 --sign; 它工作正常。

rpmbuild --define "_topdir /path/to/macrodir" -bb spec

.rpmmacro 位于宏目录中,包含

%_signature gpg
%_gpg_name Name (Comment) <emailid>
%_gpgpath pathtognupgfolder
%_gpgbin locationofgpgexec

如果我包括 --sign 那么它会抛出错误

rpmbuild --define "_topdir /path/to/macrodir" -bb --sign spec

错误:您必须在宏文件中设置“%_gpg_name”

我看不到我做错了什么。有什么建议么?

4

3 回答 3

5

正如评论中提到的OP ,%gpg_name通过--define标志将宏设置为rpm//有效。rpmbuildrpmsign

rpm --define "_gpg_name <your email or name>" --addsign <RPM to sign>

于 2015-07-14T22:43:52.280 回答
4

Follow this detailed writeup on how to sign custom rpm pacakge.

I faced a different problem, when running the following command it failed complaining no rpm file found.

rpm --addsign gyum-2.0-5.FC3.i386.rpm

After installing rpmsign package everything worked.

于 2012-08-28T19:36:38.163 回答
1

至少在我的机器上,该文件称为 .rpmmacros(带有 s)。

于 2016-08-22T08:28:47.963 回答