2010-11-23 16 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の-v -bb SPECS/test.specは" 私はこのエラーが表示されます。
+ STATUS = 0
+ '[' 0 - 038] ['0'] '
+ cd test-1 /home/snort/test/tmp/rpm-tmp.55712:36行目:cd:test-1:ファイルまたはディレクトリがありません
エラー:終了ステータスが正しくありません/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 'test-1' 'を実行すると推測しています。そしてtest-1.c55.tar.gzファイルをuntarしてから"cd test-1"にしますが、untarコマンドはディレクトリを作成しないので、スクリプトはエラーになります。私は今何をすべきか分かりません。

マイspecファイル:もっとSPECS/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が....ディレクトリテスト-1を含むように期待しています。

ディレクトリが異なっている場合は、

%setup -n yourdir 

を使用することにより、より詳細http://www.rpm.org/max-rpm/s1-rpm-inside-macros.htmlを参照してくださいすることを修正することができます。

+0

m1tk4、ビンゴ!それが私が欠けていたものでした。私はtest-1ディレクトリを作成し、ファイルをそこに置き、次にディレクトリをtarしました。今は別の理由で失敗していますが、それは話題です。質問する前にエラーを調べます。ありがとう! – Gary