我创建了一个小 bash 脚本并将其构建到 RPM 包中。这个小 bash 脚本在 CentOS 5、CentOS 6 和 CentOS 7 上运行良好(可能在 CentOS 8 上运行良好,未检查)
我的问题是:我真的需要构建
my-program.1.0.0-1.el5.noarch.rpm
my-program.1.0.0-1.el6.noarch.rpm
my-program.1.0.0-1.el7.noarch.rpm
(my-program.1.0.0-1.el8.noarch.rpm)
即使它是完全相同的源代码并且在 CentOS 6 和 CentOS 7 中填充了依赖项?
是否存在可以为所有 CentOS 主要版本创建 1 RPM 的情况?
my-program.1.0.0-1.noarch.rpm
它是如何运作的以及最佳实践是什么?谢谢
答案1
您不仅可以将相同的 RPM 用于 CentOS 的多个版本,还可以用于多个不同的基于 RPM 的发行版,因此,如果它有效,请随意在任何地方使用它。
不同的elX
后缀通常不是手动添加的,而是通过构建系统添加的——例如,如果您使用铜要构建 EPEL,您将从单个 SRPM 开始,它将为不同的 EPEL 版本构建 RPMS 并添加相应的后缀。
为不同版本提供不同的包对于已编译的项目非常重要,因为您可以获得不同版本的库、不同的编译器和构建环境等,但 bash 脚本的情况并非如此。