2010-11-23 106 views
4

我试图建立我的第一个RPM,但得到一个错误。我.rpmmarcos文件看起来是这样的:新手rpmbuild错误

%packager Your Name 
%_topdir /home/snort/test 
%_tmppath /home/snort/test/tmp 
%_smp_mflags -j3 
%__arch_install_post /usr/lib/rpm/check-rpaths /usr/lib/rpm/check-buildroot 

当我运行 “的rpmbuild -bb -v SPECS/test.spec” 我收到此错误:
+ STATUS = 0
+ '[' 0 - ne 0']'
+ cd test-1 /home/snort/test/tmp/rpm-tmp.55712:line 36:cd:test-1:No such file or directory
error:Bad exit status from /home/snort/test/tmp/rpm-tmp.55712(%prep)

文件rpm -tmp.55712以此结尾:

cd '/home/snort/test/BUILD' 
rm -rf 'test-1' 
/bin/gzip -dc '/home/snort/test/SOURCES/test-1.c55.tar.gz' | tar -xvvf - 
STATUS=$? 
if [ $STATUS -ne 0 ]; then 
    exit $STATUS 
fi 
cd 'test-1' 

我猜的rpmbuild没有的“RM -rf‘测试1’”,以消除任何旧/非必需的目录,然后将它解压缩的测试,1.c55.tar.gz文件,然后尝试到“cd test-1”,但untar命令不会使目录发生错误。我不知道现在该做什么。

我的spec文件:更多规格/ test.spec

Name:   test 
Version:  1 
Release:  .c55 
Summary:  Just a Test 

Group:   MyJunk 
License:  GPL 
URL:   http://www.somesite.com 
Source0:  test-1.c55.tar.gz 
BuildRoot:  %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 

%description 
This is just a test 
<br> 
%prep 
%setup BUILD  


%build<br> 
%configure<br> 
make %{?_smp_mflags}<br> 


%install<br> 
rm -rf $RPM_BUILD_ROOT<br> 
make install DESTDIR=$RPM_BUILD_ROOT 
<br> 

%clean<br> 
rm -rf $RPM_BUILD_ROOT<br> 


%files 
%defattr(-,root,root,-) 
%doc 

%changelog 

任何想法?
感谢您的帮助
加里

回答

5

RPM(或者,更确切的说,设置%宏)预计,源tarbal测试1.c55 ....包含目录test-1。

如果目录有不同,你可以通过使用

%setup -n yourdir 

http://www.rpm.org/max-rpm/s1-rpm-inside-macros.html更多细节解决这个问题。宾果!

+0

m1tk4,宾果!那是我错过的东西。我做了一个test-1目录,把文件放在里面,然后tar目录。现在由于其他原因失败了,但是这是脱离主题,我会在提问之前研究错误。谢谢! – Gary 2010-12-10 16:46:13