Wiki-Artikel über rpmbuild
Christoph Wickert
christoph.wickert at googlemail.com
Sun Mar 4 21:25:40 UTC 2012
Am Sonntag, den 04.03.2012, 20:25 +0100 schrieb Olaf Radicke:
> Guten Abend!
>
> Michael Schwendt <mschwendt at gmail.com> hat am 4. März 2012 um 11:39 geschrieben:
>
> > On Sun, 4 Mar 2012 10:32:57 +0100 (CET), OR (Olaf) wrote:
> >
> > > Wie schaut es bei rpm aus?
> > > Nach einer halben Stunde bist du mit rpm noch nicht viel weiter als am
> > > Anfang.
> >
> > Das glaubt Dir doch niemand. "Make" ist komplexer.
>
> Erst mal nicht. Als User brauchst du maximal drei Befehle: "make" & "make
> install".
> Manchmal noch eine "configure".
>
> Als rpmbuild-User musst du wissen:
rpmbuild ist auch kein Tool für Nutzer, sondern für Entwickler und
Paket-Maintainer. Ein Nutzer braucht nur rpm zu kennen.
> 1.) Das du ein Tar-Archiv des Codes brauchst.
Nein, es gehen auch andere Archive oder einzelne Dateien.
> 2.) Das er an einer ganz bestimmten stelle abgelegt werden muss (die auf
> unterschiedlichen Distributionen unterschiedlich sein kann).
Zeig mir eine Distribution, auf der es nicht rpmbuild/SOURCES bzw. %
_topdir/SOURCES ist.
> 3.) Das das Verzeichnis im Tar-Archiv den gleichen Namen haben muss
> (einschlislich
> Versionsnummer) wie das Ziel (das rpm), was nicht selbstverständlich ist.
Muss es nicht, dass ist davon abhängig, was als SourceX definiert ist.
Abgesehen davon: All das braucht den Nutzer ja nicht zu interessieren,
denn er bekommt ja ein fertiges Spec file, genauso wie er ein fertiges
Makefile bekommt. Sonst vergleichst Du Äpfel mit Birnen.
> 4.) Das rpmbuild noch Parameter erwartet. Mindestens den Namen des Spec-File.
> Meist noch weitere, die man durch das lesen des Spec-Files oft nicht
> ableiten
> kann (im Gegensatz zu make).
Eigentlich sollte man die Dateien nicht lesen müssen, der Aufruf von
--help sollte reichen.
> 5.) Das dass fertige rpm nicht dort gespeichert wird, wo man das Spec-File
> aufgerufen wird.
Wo man es findest steht am Ende des builds.
> 6.) Das unter bestimmten Umständen die rpmbuild-Umgebung nicht automatisch
> erstellt wird.
Und zwar unter welchen?
> 7.) Das die rpmbuild-Umgebung von mehr als einem Paket verwendet wird.
Gegenfrage: Woher soll man wissen, dass es bei make nicht so ist? Man
kann sich immer ein Alleinstellungsmerkmal heraussuchen und behaupten,
das sei kompliziert und das
> Der Aufbau von einem Makefile ist in einem Satz erklärt:
>
> Ziel: Quelle
> Befehl
>
> Zweizeiliges Beispiel:
>
> <snip>
> kochrezept.pdf: kochrezept.tex
> pdflatex kochrezept.tex
> <snap>
Meinst Du wirklich, jemand kann mit dieser Anleitung ein Makefile
schreiben?
> Befehl für den User: "make" - das war es. Er User/Entwickler hat eine valides
> Makefile.
Aber dahin muss er erst mal kommen. Merkst Du eigentlich, dass Du Äpfel
mit Birnen vergleichst? Du vergleichst das *Schreiben* eines spec files
mit dem *Aufruf* eines Makefiles.
Wenn Du etwas vergleichst, dann vergleiche bitte
* Schreiben von Makefiles mit Schreiben von spec files und
* Aufrufen von Make mit Aufrufen von rpmbuild.
Besten Dank,
Christoph
More information about the de-users
mailing list