Hallo Thomas,
danke für die Antwort.
Krieger Thomas kriegeth@tom-krieger.de hat am 21. Januar 2014 um 08:41 geschrieben:
[...]
Es steht alles in der Fehlermeldung. Du hast eine 2. %prep section im SPEC File in Zeile 62.
Definit: nein.
Name: tntmake Summary: Create a autotool based build system for tntnet projects. Version: 1 Group: develop License: GPL Release: 1 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-olaf BuildArch: noarch Source: %{name}-%{version}.tar.gz Requires: tntnet Vendor: Olaf Radicke Packager: Olaf Radicke briefkasten@olaf-radicke.de
%description Create a autotool based build system for tntnet projects.
%prep
%setup
%install if [ ! -d $RPM_BUILD_ROOT/usr/lib/tntmake/ ] ; then mkdir -p $RPM_BUILD_ROOT/usr/lib/tntmake/ ; fi; install $RPM_BUILD_DIR/%{name}-%{version}/bin/*.rb $RPM_BUILD_ROOT/usr/lib/tntmake/
if [ ! -d $RPM_BUILD_ROOT/usr/lib/tntmake/ ] ; then mkdir -p $RPM_BUILD_ROOT/usr/lib/tntmake/ ; fi; install $RPM_BUILD_DIR/%{name}-%{version}/bin/resources/* $RPM_BUILD_ROOT/usr/lib/tntmake/resources/
if [ ! -d $RPM_BUILD_ROOT/usr/bin/ ] ; then mkdir -p $RPM_BUILD_ROOT/usr/bin/ ; fi; install $RPM_BUILD_DIR/%{name}-%{version}/bin/tntmake $RPM_BUILD_ROOT/usr/bin/tntmake
%post
%clean rm -fr $RPM_BUILD_ROOT
%postun
%files %attr(777, root, root) /usr/lib/tntmake/ %attr(777, root, root) /usr/bin/tntmake
%changelog * Tue Jan 21 2014 briefkasten@olaf-radicke - 1 - Init-Version.
-------------------|-------------------|-------------------|-------------------|
Olaf Radicke wrote:
Hallo Thomas,
danke für die Antwort.
Krieger Thomas kriegeth@tom-krieger.de hat am 21. Januar 2014 um 08:41 geschrieben:
[...]
Es steht alles in der Fehlermeldung. Du hast eine 2. %prep section im SPEC File in Zeile 62.
Definit: nein.
%prep
%setup
%post
%postun
Wenn die bei dir eh leer sind: Warum wirfst du die nicht raus? Was steht eigentlich in Zeile 62 in deinem SPEC-File? Ich habe keine Lust, da jetzt selber zu raten, welche das ist.
Ralph
Ralph Angenendt ralph+fedora@strg-alt-entf.org hat am 21. Januar 2014 um 11:10 geschrieben:
Olaf Radicke wrote:
Hallo Thomas,
danke für die Antwort.
Krieger Thomas kriegeth@tom-krieger.de hat am 21. Januar 2014 um 08:41 geschrieben:
[...]
Es steht alles in der Fehlermeldung. Du hast eine 2. %prep section im SPEC File in Zeile 62.
Definit: nein.
%prep
%setup
%post
%postun
Wenn die bei dir eh leer sind: Warum wirfst du die nicht raus?
Ich bin ein großer Fan von explizit statt implizit.
Was steht eigentlich in Zeile 62 in deinem SPEC-File? Ich habe keine Lust, da jetzt selber zu raten, welche das ist.
Das spec hat keine 62 Zeilen. Offenbar läuft irgend ein RPM-Macro Amok.
http://www.redhat.com/archives/rpm-list/2003-February/msg00076.html
Gruß
Olaf
-------------------|-------------------|-------------------|-------------------|
On Tue, 21 Jan 2014 09:11:25 +0100 (CET), Olaf Radicke wrote:
%install if [ ! -d $RPM_BUILD_ROOT/usr/lib/tntmake/ ] ; then mkdir -p $RPM_BUILD_ROOT/usr/lib/tntmake/ ; fi; install $RPM_BUILD_DIR/%{name}-%{version}/bin/*.rb $RPM_BUILD_ROOT/usr/lib/tntmake/
Hänge .spec Dateien doch bitte vernünftig als Anhang an eine mail heran oder verweise auf ein vollständiges src.rpm zum Downloaden, damit sich ein rpmbuild nachvollziehen lassen könnte.
Hier "inline" sind da merkwürdige Sonderzeichen hinter "then" und "install", und das an mehreren Stellen der Datei. 0xc2 0xa0 vor dem eigentlichen Space:
000001d0 6e 74 6d 61 6b 65 2f 20 5d 20 3b 20 74 68 65 6e |ntmake/ ] ; then| 000001e0 c2 a0 20 6d 6b 64 69 72 20 2d 70 0a 24 52 50 4d |.. mkdir -p.$RPM| 000001f0 5f 42 55 49 4c 44 5f 52 4f 4f 54 2f 75 73 72 2f |_BUILD_ROOT/usr/| 00000200 6c 69 62 2f 74 6e 74 6d 61 6b 65 2f 20 3b 20 66 |lib/tntmake/ ; f| 00000210 69 3b 0a 69 6e 73 74 61 6c 6c c2 a0 20 24 52 50 |i;.install.. $RP|
Um ehrlich zu sein, ich habe den Kern des Problems noch gar nicht verstanden. Kann mir da jemand Aufschluss geben?
Du hast irgendwas zerhackt, was viele Tausend Pakete von Fedora oder RHEL nicht betrifft. ;-)
Michael Schwendt mschwendt@gmail.com hat am 21. Januar 2014 um 12:34 geschrieben: Hänge .spec Dateien doch bitte vernünftig als Anhang an eine mail heran oder verweise auf ein vollständiges src.rpm zum Downloaden, damit sich ein rpmbuild nachvollziehen lassen könnte.
geschehen...
Gruß
Olaf
On Tue, 21 Jan 2014 14:06:09 +0100 (CET), Olaf Radicke wrote:
Michael Schwendt mschwendt@gmail.com hat am 21. Januar 2014 um 12:34 geschrieben: Hänge .spec Dateien doch bitte vernünftig als Anhang an eine mail heran oder verweise auf ein vollständiges src.rpm zum Downloaden, damit sich ein rpmbuild nachvollziehen lassen könnte.
geschehen...
Das ist aber eine geänderte Datei, und in welcher Umgebung (welche Distri) bekommst Du den Fehler überhaupt?
Geh' das doch mal systematisch an. ;)
Bekommst Du den Fehler mit allen Deinen rpms oder nur mit diesem?
Bekommst Du ihn nur bei "rpmbuild -bb …" oder auch bei "rpmbuild -bs *.spec"?
Wie sieht es mit einem anderen, frisch angelegten Benutzerkonto aus?
Erzeuge eine völlig neue spec Datei mit rpmdev-newspec. Fülle sie schrittweise aus und teste zwischendurch immer wieder ein rpmbuild. Ab wann kannst Du den Fehler reproduzieren?
Alternativ lösche den Inhalt von %install und %files und %changelog. Gibt es dann noch immer den Fehler?
Eine Empfehlung die ich gelesen habe was '%%prep' statt '%prep' zu schreiben,
Das ergibt so noch keinen Sinn. In der spec Datei gibt es kein zweites %prep. Doppeltes %% als "escape" für % ist nur dann sinnvoll, wenn Du wirklich ein zweites %prep irgendwo in einem Kommentar oder im %changelog stehen hättest.
Michael Schwendt mschwendt@gmail.com hat am 21. Januar 2014 um 14:30 geschrieben:
On Tue, 21 Jan 2014 14:06:09 +0100 (CET), Olaf Radicke wrote:
Michael Schwendt mschwendt@gmail.com hat am 21. Januar 2014 um 12:34 geschrieben: Hänge .spec Dateien doch bitte vernünftig als Anhang an eine mail heran oder verweise auf ein vollständiges src.rpm zum Downloaden, damit sich ein rpmbuild nachvollziehen lassen könnte.
geschehen...
Das ist aber eine geänderte Datei,
Das ist richtig. ich habe die Verbesserungsvorschläge eingearbeitet.
und in welcher Umgebung (welche Distri) bekommst Du den Fehler überhaupt?
Fedora release 17 (Beefy Miracle)
Geh' das doch mal systematisch an. ;)
Bekommst Du den Fehler mit allen Deinen rpms oder nur mit diesem?
nein.
Bekommst Du ihn nur bei "rpmbuild -bb …" oder auch bei "rpmbuild -bs *.spec"?
Ich benutze ein kleine Makefile (siehe Anhang).
Wie sieht es mit einem anderen, frisch angelegten Benutzerkonto aus?
verhält sich nicht anders.
Alternativ lösche den Inhalt von %install und %files und %changelog. Gibt es dann noch immer den Fehler?
Ja.
On Tue, 21 Jan 2014 17:50:05 +0100 (CET), Olaf Radicke wrote:
Fedora release 17 (Beefy Miracle)
Beendet seit 2013-07-30. https://fedoraproject.org/wiki/End_of_life
Allerdings gehe ich nicht davon aus, daß es ein Bug in F17 ist/war.
Bekommst Du den Fehler mit allen Deinen rpms oder nur mit diesem?
nein.
Als Antwort auf beide Fragen?
Ich benutze ein kleine Makefile (siehe Anhang).
Autsch. Das verkompliziert die Fehlersuche wiedermal unnötig. Nicht etwa, weil Makefiles kompliziert sind, sondern weil Du da bei diesem sehr eigenen Backofen schonmal einen Fehler eingebaut hattest oder mal wieder nicht alle Modifikation Deiner RPM Konfiguration offenlegst. Geh' dochmal zurück auf den stinknormalen Weg, der für mehrere Tausend Pakete in Fedora 17 funktioniert hat: spec + tar.gz + rpmbuild
Ausgehend von einem src.rpm, das funktioniert, sollte es auf Deinem System keine langwierige Übung sein, schrittweise Änderungen an der spec Datei vorzunehmen, bis der Fehler auftritt.
Alternativ lösche den Inhalt von %install und %files und %changelog. Gibt es dann noch immer den Fehler?
Ja.
Das ergibt irgendwie keinen Sinn. Vielleicht hast Du Dir die Installation zerschossen. In einer minimalen spec Datei, die dennoch ein rpmbuild -bs und -bb übersteht, ist kaum noch etwas drin.
Michael Schwendt mschwendt@gmail.com hat am 21. Januar 2014 um 20:49 geschrieben:
On Tue, 21 Jan 2014 17:50:05 +0100 (CET), Olaf Radicke wrote:
Fedora release 17 (Beefy Miracle)
Beendet seit 2013-07-30. https://fedoraproject.org/wiki/End_of_life
Ich weiß. Es gibt bald ein neues Notebook. Lohnt nicht mehr da ein Upgrade zu machen.
Allerdings gehe ich nicht davon aus, daß es ein Bug in F17 ist/war.
Bekommst Du den Fehler mit allen Deinen rpms oder nur mit diesem?
nein.
Als Antwort auf beide Fragen?
Entschuldigung. Ich war abgelenkt. Kein anders RPM bereitet diese Probleme bei mir.
Ich benutze ein kleine Makefile (siehe Anhang).
Autsch. Das verkompliziert die Fehlersuche wiedermal unnötig. Nicht etwa, weil Makefiles kompliziert sind, sondern weil Du da bei diesem sehr eigenen Backofen schonmal einen Fehler eingebaut hattest oder mal wieder nicht alle Modifikation Deiner RPM Konfiguration offenlegst.
Ich habe das Projekt jetzt auf GitHub geschoben: https://github.com/OlafRadicke/tntmake
Geh' dochmal zurück auf den stinknormalen Weg, der für mehrere Tausend Pakete in Fedora 17 funktioniert hat: spec + tar.gz + rpmbuild
Das scheint witziger weise zu gehen...
or@augsburg:~/a-z/git/tntmake$ cp ./tntmake-1.tar.gz /home/or/rpmbuild/SOURCES/
or@augsburg:~/a-z/git/tntmake$ rpmbuild -vv -bb ./bin/tntmake.spec Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.jsOEwH + umask 022 + cd /home/or/rpmbuild/BUILD + cd /home/or/rpmbuild/BUILD + rm -rf tntmake-1 + /usr/bin/tar -xvvf - + /usr/bin/gzip -dc /home/or/rpmbuild/SOURCES/tntmake-1.tar.gz drwxrwxr-x or/or 0 2014-01-21 14:03 tntmake-1/ drwxrwxr-x or/or 0 2014-01-21 21:53 tntmake-1/bin/ -rw-rw-r-- or/or 596 2014-01-21 17:47 tntmake-1/bin/BulidFile.rb -rwxrwxr-x or/or 1105 2014-01-21 21:53 tntmake-1/bin/tntmake.rb -rw-rw-r-- or/or 1132 2014-01-21 21:53 tntmake-1/bin/tntmake.spec -rw-rw-r-- or/or 2033 2014-01-21 21:53 tntmake-1/bin/MakeRules.rb -rw-rw-r-- or/or 1173 2014-01-21 21:53 tntmake-1/bin/getExampleConfigFile.rb -rwxrwxr-x or/or 117 2014-01-21 21:53 tntmake-1/bin/tntmake -rw-rw-r-- or/or 546 2014-01-21 17:47 tntmake-1/bin/BuildJob.rb -rw-rw-r-- or/or 2266 2014-01-21 21:53 tntmake-1/bin/TNTMake.rb drwxrwxr-x or/or 0 2014-01-21 14:03 tntmake-1/bin/resources/ -rw-rw-r-- or/or 752 2014-01-21 21:53 tntmake-1/bin/resources/configure.ac.template -rw-rw-r-- or/or 76 2014-01-21 21:53 tntmake-1/bin/resources/Makefile.am.template -rw-rw-r-- or/or 885 2014-01-21 21:53 tntmake-1/bin/resources/SubMakefile.am.am.template -rw-rw-r-- or/or 1132 2014-01-21 21:53 tntmake-1/tntmake.spec + STATUS=0 + '[' 0 -ne 0 ']' + cd tntmake-1 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.xYvXLv + umask 022 + cd /home/or/rpmbuild/BUILD + cd tntmake-1 + '[' '!' -d /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386/usr/lib/tntmake/ ']' + mkdir -p /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386/usr/lib/tntmake/ + install /home/or/rpmbuild/BUILD/tntmake-1/bin/BuildJob.rb /home/or/rpmbuild/BUILD/tntmake-1/bin/BulidFile.rb /home/or/rpmbuild/BUILD/tntmake-1/bin/MakeRules.rb /home/or/rpmbuild/BUILD/tntmake-1/bin/TNTMake.rb /home/or/rpmbuild/BUILD/tntmake-1/bin/getExampleConfigFile.rb /home/or/rpmbuild/BUILD/tntmake-1/bin/tntmake.rb /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386/usr/lib/tntmake/ + '[' '!' -d /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386/usr/lib/tntmake/resources/ ']' + mkdir -p /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386/usr/lib/tntmake/resources/ + install /home/or/rpmbuild/BUILD/tntmake-1/bin/resources/Makefile.am.template /home/or/rpmbuild/BUILD/tntmake-1/bin/resources/SubMakefile.am.am.template /home/or/rpmbuild/BUILD/tntmake-1/bin/resources/configure.ac.template /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386/usr/lib/tntmake/resources/ + '[' '!' -d /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386/usr/bin/ ']' + mkdir -p /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386/usr/bin/ + install /home/or/rpmbuild/BUILD/tntmake-1/bin/tntmake /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386/usr/bin/tntmake + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump Processing files: tntmake-1-1.noarch Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: /bin/bash /usr/bin/ruby Checking for unpackaged file(s): /usr/lib/rpm/check-files /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386 Wrote: /home/or/rpmbuild/RPMS/noarch/tntmake-1-1.noarch.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.M7pldb + umask 022 + cd /home/or/rpmbuild/BUILD + cd tntmake-1 + /usr/bin/rm -rf /home/or/rpmbuild/BUILDROOT/tntmake-1-1.i386 + exit 0
or@augsburg:~/a-z/git/tntmake$ ls /home/or/rpmbuild/RPMS/noarch/ tntmake-1-1.noarch.rpm
Wahrscheinlich ist es das einfachste, das Makefile um zubauen.
Gruß
Olaf
de-users@lists.fedoraproject.org