-1

我正在尝试创建我们从外部实体获得的某些软件的 RPM。他们为我们提供了 32 位二进制文​​件和 64 位二进制文​​件的压缩包。

我想知道创建可以处理两种类型的二进制文件的规范文件的最佳方法是什么。

我尝试了类似的东西:

%prep
%ifarch i686
    # Use Source0 (32bit)
    %setup -c -T -a 0
%endif

%ifarch x86_64
    # Use Source1 (64bit)
    %setup -c -T -a 1
%endif

但这给了我回报:+ %setup -c -T -a 1 /var/tmp/rpm-tmp.67731: line 25: fg: no job control error: Bad exit status from /var/tmp/rpm-tmp .67731 (%prep)

我猜这是由于 %setup 的 -a 选项,我认为这意味着“首先更改目录,然后提取源 $arg1.

有一个更好的方法吗?

4

1 回答 1

0

我不确定您的 Source0 或 Source1 中包含什么,但可能它们不是 tarball,所以我认为没有理由调用%setup. 而是像这样与他们一起工作:

%prep
#no %setup
%ifarch i686
  #use %{SOURCE0}
%endif

%ifarch x86_64
  #use %{SOURCE1}
%endif
于 2012-04-24T22:28:05.867 回答