gpt4 book ai didi

rpmbuild %{dist} 未在 CentOS 5.5 上定义?

转载 作者:行者123 更新时间:2023-12-03 10:55:02 25 4
gpt4 key购买 nike

我正在尝试使用 %{dist} 在我的 RPM 规范文件中添加标签,以提供 Fedora Core(例如 fc12)、CentOS 5(例如 el5)和 Amazon 的 Linux AMI 之间特定于发行版的依赖关系:

Release: %_svn_revision%{?dist}


# Depencencies
%{?rhel:Requires: ...}
%{?fedora:Requires: ...}

不幸的是, %{dist}似乎没有在 CentOS 5.5 中定义,而且我还没有找到与 CentOS 5.5 匹配的特定于发行版的条件(我认为 el5 会匹配,但似乎不匹配)。 This票报失踪 %{dist} 2008 年在 CentOS 中,但自 2009 年以来没有更新。

我怎样才能得到 %{dist}在 CentOS 中定义,我应该使用什么条件来匹配 CentOS 5?
任何 RPM 专家都可以指出我正确的方向吗?

最佳答案

在 CentOS 5 上没有定义 dist 宏,因为它不在 /etc/rpm/macros.disttag 中。 - 有一个名为 buildsys-macros-rhel 的 RPM提供它,或 buildsys-macros在 Fedora 上,但出于某种原因,它没有被 Centos 重新打包。

选项 1) 从 here 下载并安装 fedora build-macros

选项 2) 每次调用 rpmbuild --define 'dist .el5'

选项 3) 手动编辑/etc/rpm/macros.disttag 为 rhel (5) 和 dist (.el5) 添加宏定义。

然后,您可以在规范文件中使用这样的条件:

%if 0%{?rhel}  == 5
%{Requires: foo}
%endif

关于rpmbuild %{dist} 未在 CentOS 5.5 上定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5135502/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com