RPM创建一个触发器,使用来自新(触发)RPM

时间:2015-07-22 08:01:02

标签: linux redhat rpm-spec

一点背景 - 由于Redhat停止更新RHEL6的gcc版本,我们必须实现自己的gcc5部署。

我们目前无法升级到RHEL7,也不能解决这个问题,因为Redhat还没有为rhel7部署gcc5。

我们当前的问题是/ usr / src / kernels / $(uname -r)/include/linux/compiler-gcc5.h

该路径和compiler-gcc * .h文件归kernel-devel所有,而gcc5只存在于fedora中(仅适用于官方介绍gcc5的发行版)。

我可以轻松地创建一个拥有该文件的rpm(原因主要是因为如果RH曾经使用该文件部署kerenl-devel,我们将会收到冲突,因此我们可以停止为当前内核部署我们自己的内核),但是我想使用%triggerin将文件复制到系统上安装的任何新的kernel-devel。

使用uname -r不会有两个原因:

  1. 在rpmbuild时评估,而不是安装时间。
  2. 它评估当前正在运行的内核,而不是刚刚安装的未来内核。
  3. 我认为,我可以通过使用%post脚本来克服1,但是无法弄清楚如何克服2,也不知道如何通过我的rpm在它的最终位置拥有该文件(我可以冒一条道路,我不会事先知道,还是用dkms之类的东西?)

    有没有办法知道触发%triggerin的rpm的确切版本并将其合并到路径中?

    是否有替代解决方案?

0 个答案:

没有答案