Compilation 我想重新制作没有srpm的rpm包
目标 我有一个rpm包,但我想替换rpm中的几个文件,并创建一个新的rpmCompilation 我想重新制作没有srpm的rpm包,compilation,rpm,rpmbuild,rpm-spec,Compilation,Rpm,Rpmbuild,Rpm Spec,目标 我有一个rpm包,但我想替换rpm中的几个文件,并创建一个新的rpm 背景 我找不到某个软件的srpm。我可以下载的是rpm软件包 操作 a。我通过rpmrebuild--package--notestinstall-sxxx.spec xxx.rpm从rpm获得了规范文件 b。我通过rpm2cpio-pkgname | cpio-ivd c。我将上述文件复制到~/rpmbuild/SOURCE中,并将xxx.spec复制到~/rpmbuild/SPECS中 d。我确实找到了rpmbuil
rpmrebuild--package--notestinstall-sxxx.spec xxx.rpm从rpm获得了规范文件
b。我通过rpm2cpio-pkgname | cpio-ivd
c。我将上述文件复制到~/rpmbuild/SOURCE中,并将xxx.spec复制到~/rpmbuild/SPECS中
d。我确实找到了rpmbuild-bb xxx.spec
,但我发现文件未找到:
用于每个文件
rpm2cpio-pkgname | cpio-ivd
中的文件进行tarball,然后修改spec文件
或者我必须先安装rpm,然后尝试运行rpmrebuild
来创建新的rpm
我想知道解决这个问题的传统方法,非常感谢您确实需要打开该规范并使其适应所需的文件。 spec文件本身包含了大多数问题的答案:
标记将告诉您所需的源文件及其名称Source
部分将告诉您在构建rpm后,rpm中需要哪些文件%files
我建议您打开另一个问题,发布spec文件和您通过
rpm2cio
提取的文件列表。我不知道有什么方法可以从rpm重新生成spec文件。可能是某些错误滑入了该规范文件;我认为您应该调整规范文件以使其正常工作;也许你的情况很好。我认为你做不到。看看可能的复制品。你真是太好了。谢谢你的帮助。我检查了您的建议,我知道从当前安装的rpm中重新生成rpm的三种方法。第一个是使用rpm repack
,第二个是使用rpm-e--repackage package_name
,最后一个是使用rpmrebuild
。但不幸的是,这些方法并不能解决我的问题。因为我需要替换rpm中的一些原始文件,所以我想我必须修改spec文件,以便实现。