如何解决没有这样的文件或目录错误:构建RPM时(%prep)的退出状态是否正常?

时间:2009-12-04 13:34:21

标签: linux rpmbuild

我正在建立一个转速,请让我知道我哪里出错了,

我的spec文件是rpms.spec,内容是:

Summary: GNU indent
Name: rpms
Version: 1
Release: 1
Source0: %{name}-%{version}.tar.gz
License: GPL
Group: Development/Tools
%description
The GNU indent program reformats C code to any of a variety of
formatting standards, or you can define your own.
%prep
%setup -q
%build
./configure
make
%install
make install
%files
%defattr(-,root,root)
/usr/local/bin/indent
%doc /usr/local/info/indent.info
%doc %attr(0444,root,root) /usr/local/man/man1/indent.1
%doc COPYING AUTHORS README NEWS

我已将tar文件复制到/ usr / src / redhat / SOURCES /也 然后当我做rpmbuild -ba rpms.spec我得到以下错误

rpmbuild -ba rpms.spec  Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.87218
+ umask 022
+ cd /usr/src/redhat/BUILD
+ LANG=C
+ export LANG
+ unset DISPLAY
+ cd /usr/src/redhat/BUILD
+ rm -rf rpms-1
+ /bin/gzip -dc /usr/src/redhat/SOURCES/rpms-1.tar.gz
+ tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd rpms-1 /var/tmp/rpm-tmp.87218: line 35: cd: rpms-1: No such file or directory error: Bad exit status from /var/tmp/rpm-tmp.87218 (%prep)

RPM构建错误:     来自/var/tmp/rpm-tmp.87218(%prep)

的退出状态不佳

没有目录作为rpms-1.我尝试在BUILd目录中创建目录它没有用。

1 个答案:

答案 0 :(得分:6)

您已将名称设为rpms,将版本设为1

因此,rpmbuild将假设解压缩rpms-1.tar.gz会产生一个名为rpms-1的目录,其中应该进入该目录进行构建。

如果要覆盖它,请将%setup更改为

%setup -n yourdir

其中yourdir是您的tar.gz文件中打包源的目录