2016-03-29 7 views
-1

Ich versuche, ein einfaches RPM zu erstellen und das gefürchtete Problem "unverpackte Datei" zu erleben. Das RPM enthält eine einzelne TAR-Datei mit einer Anzahl vorkompilierter Binärdateien (vorerst). Die Installation muss diese auf dem Host-System installieren.RPM spec% Dateien

Meine Spec-Datei: Zusammenfassung Fall

Name LL 

Packager: Me 

Source: one.tar.gz 

license: AllRightsReserved 

BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 

%description 
Initial RPM test 

%prep 
%setup -n one 

%build 

%install 
rm -rf -v $RPM_BUILD_ROOT 
mkdir -p -v $RPM_BUILD_ROOT/opt/rpm_test 
cp -R * -v $RPM_BUILD_ROOT/opt/rpm_test 

%clean 
rm -rf %{buildroot} 
rm -rf $RPM_BUILD_ROOT 
rm -rf $RPM_BUILD_DIR 
rm -rf %{_tmppath/%{name} 
rm -rf %{_topdir}/BUILD%{name} 

%post 
echo "$RPM_BUILD_ROOT Adding file" 

%postun 

%files 
#%defattr(-,root,root,-) 
%dir /opt/rpm_test/one 
/opt/rpm_test/one/file1.txt 
/opt/rpm_test/one/file2.txt 
/opt/rpm_test/one/file3.txt 
%dir 

Der Ausgang:

[[email protected] SPECS]$ rpmbuild -bb case1.spec 
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.f2j8Hn 
+ umask 022 
+ cd /home/rajp/rpmbuild1/BUILD 
+ LANG=C 
+ export LANG 
+ unset DISPLAY 
+ cd /home/rajp/rpmbuild1/BUILD 
+ rm -rf one 
+ /usr/bin/gzip -dc /home/rajp/rpmbuild1/SOURCES/one.tar.gz 
+ /bin/tar -xvvf - 
drwxrwxr-x rajp/rajp   0 2016-03-23 10:00 one/ 
-rw-rw-r-- rajp/rajp   6 2016-03-23 10:00 one/file3.txt 
-rw-rw-r-- rajp/rajp   6 2016-03-23 10:00 one/file1.txt 
-rw-rw-r-- rajp/rajp   6 2016-03-23 10:00 one/file2.txt 
+ STATUS=0 
+ '[' 0 -ne 0 ']' 
+ cd one 
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w . 
+ exit 0 
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.PSIwwg 
+ umask 022 
+ cd /home/rajp/rpmbuild1/BUILD 
+ cd one 
+ LANG=C 
+ export LANG 
+ unset DISPLAY 
+ exit 0 
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.TEN8l9 
+ umask 022 
+ cd /home/rajp/rpmbuild1/BUILD 
+ '[' /home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64 '!='/']' 
+ rm -rf /home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64 
++ dirname /home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64 
+ mkdir -p /home/rajp/rpmbuild1/BUILDROOT 
+ mkdir /home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64 
+ cd one 
+ LANG=C 
+ export LANG 
+ unset DISPLAY 
+ rm -rf -v /home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64 
removed directory: `/home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64' 
+ mkdir -p -v /home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64/opt/rpm_test 
mkdir: created directory `/home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64' 
mkdir: created directory `/home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64/opt' 
mkdir: created directory `/home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64/opt/rpm_test' 
+ cp -R file1.txt file2.txt file3.txt -v /home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64/opt/rpm_test 
`file1.txt' -> `/home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64/opt/rpm_test/file1.txt' 
`file2.txt' -> `/home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64/opt/rpm_test/file2.txt' 
`file3.txt' -> `/home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64/opt/rpm_test/file3.txt' 
+ /usr/lib/rpm/find-debuginfo.sh --strict-build-id /home/rajp/rpmbuild1/BUILD/one 
+ /usr/lib/rpm/check-rpaths /usr/lib/rpm/check-buildroot 
+ /usr/lib/rpm/redhat/brp-compress 
+ /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip 
+ /usr/lib/rpm/redhat/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump 
+ /usr/lib/rpm/brp-python-bytecompile 
+ /usr/lib/rpm/redhat/brp-python-hardlink 
+ /usr/lib/rpm/redhat/brp-java-repack-jars 
Processing files: LL-debuginfo-2.6-1.x86_64 
Checking for unpackaged file(s): /usr/lib/rpm/check-files /home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64 
error: Installed (but unpackaged) file(s) found: 
    /opt/rpm_test/file1.txt 
    /opt/rpm_test/file2.txt 
    /opt/rpm_test/file3.txt 


RPM build errors: 
    Installed (but unpackaged) file(s) found: 
    /opt/rpm_test/file1.txt 
    /opt/rpm_test/file2.txt 
    /opt/rpm_test/file3.txt 
[[email protected] SPECS]$ 

Leider

Antwort

0

Ihre spec-Datei Anwendungen in nicht :(

Dank Voraus Google hilft /opt/rpm_test/one, während die problematische Datei s sind in /opt/rpm_test/.

Erwartet:

/opt/rpm_test/one/file1.txt 

Actual

/opt/rpm_test/file1.txt 
+0

Ich habe den Abschnitt% Dateien aktualisiert, aber immer noch scheitern ... 'Verarbeitung von Dateien: LL-debuginfo-2.6-1.x86_64 Suche nach nicht-entpackten Datei (en):/usr/lib/rpm/check-files /home/rajp/rpmbuild1/BUILDROOT/LL-2.6-1.x86_64 Fehler: Installierte (aber unverpackte) Datei (en) gefunden: /opt/rpm_test/file1.txt /opt/rpm_test/file2.txt /opt/rpm_test/file3.txt RPM Fehler bauen: installiert ist (aber unverpackte) Datei (en) gefunden: /opt/rpm_test/file1.txt /opt/rpm_test/file2.txt /opt/rpm_test/file3.txt [rajp @ 007] $ ' – slickfive

+0

Der Kommentar ist nicht hilfreich. Sie könnten Ihrer Anfrage * neuen Inhalt hinzufügen, um zusätzliche Informationen anzuzeigen. (Die Frage zu modifizieren oder zu überarbeiten, so dass die ursprüngliche Frage nicht leicht zu bestimmen ist, wäre nicht hilfreich). –

+0

Hallo, ich habe meine lokale Spezifikationsdatei auf (% files): /opt/rpm_test/one/file1.txt aktualisiert, aber das hat nicht geholfen. Immer noch das gleiche Problem. – slickfive

0

die leere %postun herausnehmen? Ich denke, das ist das Problem.

+0

Gute Idee, aber nur Verschieben der% Dateien Abschnitt schien das Problem zu beheben .. – slickfive

+0

Moving es kann ein subtiles Problem an anderer Stelle eingeführt haben. Ich denke * das Problem war, dass die "% files" als '% postun' Skript interpretiert wurden. Nun könnte es das ignorieren, was dem '% postun' Tag folgt. –

1

BEHOBEN! Ich habe den Abschnitt% files direkt unter dem Abschnitt% description verschoben! Hoffe, das hilft jemandem ..