Mac OSX上rpmbuild的错误退出状态

时间:2013-05-24 00:04:43

标签: macos rpm rpmbuild

我正在努力将一些工作打包到rpm中。我在brew安装rpm后在Mac OSX上执行此操作。我有一个基本的.spec文件,但是我收到错误并且无法诊断它:

$ rpmbuild -ba myapp.spec
Executing(%prep): %{__spec_prep_cmd} /usr/local/Cellar/rpm/5.4.10/var/tmp/rpm-tmp.14478
error: Bad exit status from /usr/local/Cellar/rpm/5.4.10/var/tmp/rpm-tmp.14478 (%prep)


RPM build errors:
    Bad exit status from /usr/local/Cellar/rpm/5.4.10/var/tmp/rpm-tmp.14478 (%prep)

规范文件如下:

Name:           myapp
Version:        0.1.0
Release:        1
Summary:        Web service to do stuff
URL:            http://myapp.com
BuildRoot:      %{_tmppath}/myapp-build-root

%description
My app

%prep

%build

%install

%pre

%preun

%postun

%clean

%files
%defattr(-,www-data,www-data,-)
%doc

这是我第一次构建rpm,我做错了什么,我该如何解决这个问题。提前谢谢!

1 个答案:

答案 0 :(得分:2)

我今天遇到了同样的问题。没有明显的原因,即使没有任何内容,%prep宏也会失败。

在添加这两个值后,在我的Ubuntu框上运行您的规范似乎工作得很好:

License:        yourLicense
Group:          yourGroup

我有理由相信,rpm没有通过自制软件在我的盒子上正确安装。我想我在某个时候中止了这个过程,然后在午餐时忘记了它,但是rpmbuild可以在我的脚本中使用,我遇到了上面的问题。

我将尝试以详细模式干净地安装rpm公式,看看我的假设是否正确。

更新

我已经成功安装了rpm,但是花了很长时间:

/usr/local/Cellar/rpm/5.4.10: 187 files, 9.7M, built in 92.4 minutes

然而,它仍然以相同的错误继续失败

rpmbuild -ba so.spec
Executing(%prep): %{__spec_prep_cmd} /usr/local/Cellar/rpm/5.4.10/var/tmp/rpm-tmp.69701
error: Bad exit status from /usr/local/Cellar/rpm/5.4.10/var/tmp/rpm-tmp.69701 (%prep)

以/usr/local/Cellar/rpm/5.4.10/var/tmp/rpm-tmp.69701的内容说:

%{__spec_prep_template}%{__spec_prep_post}