如何使 src.rpm 将源代码解压到我想要的任何目录?

如何使 src.rpm 将源代码解压到我想要的任何目录?

我正在尝试制作一个 rpm,将源代码解压到自定义目录,例如 /asdf。当我运行它时,它总是错误地显示“cannot create %sourcedir /usr/src/redhat/SOURCES”。当我执行命令“rpm -i xyz.src”时,是否可以在 .spec 文件中放入一些内容,使其将源代码(只是 src.rpm 中的 .tar.gz 文件)解压到自定义目录.rpm”?

答案1

使用rpm2cpio解压 rpm。或者使用外星人将 rpm 转换为其他包(deb、tar...)

使用 rpm2cio 的确切语法

rpm2cpio ./package_name-test-1.1-1.x86_64.rpm | cpio -idmv

答案2

是的,您可以使用-r or --root optionrpm 指定替代根路径作为顶级目录。

您还可以使用 rpm2cpio 命令从 rpm 中提取文件。人 rpm2cpio。

答案3

解决方案非常简单,只需在规范文件中调用 tar,然后指定我想要解压到的路径即可。

相关内容