Manpages

BEZEICHNUNG

rpmbuild - RPM-Paket(e) erstellen

ÜBERSICHT

PAKETE ERSTELLEN:
rpmbuild
{-ba|-bb|-bp|-bc|-bi|-bl|-bs} [Rpmbuild-Optionen] SPEC-DATEI …

rpmbuild {-ra|-rb|-rp|-rc|-ri|-rl|-rs} [Rpmbuild-Optionen] QUELLPAKET …

rpmbuild {-ta|-tb|-tp|-tc|-ti|-tl|-ts} [Rpmbuild-Optionen] TARBALL …

rpmbuild {--rebuild|--recompile} QUELLPAKET …

VERSCHIEDENES:
rpmbuild --showrc

Rpmbuild-Optionen
[--buildroot VERZEICHNIS] [--clean] [--nobuild]
[--rmsource] [--rmspec] [--short-circuit] [--build-in-place]
[--noprep] [--noclean] [--nocheck]
[--rpmfcdebug]
[--target PLATTFORM]
[--with OPTION] [--without OPTION]

BESCHREIBUNG

rpmbuild wird zur Erstellung von sowohl Binär- als auch Quell-Softwarepaketen verwendet. Ein Paket besteht aus einem Dateiarchiv sowie Metadaten, die zum Installieren und Löschen der Archivdateien verwendet werden. Die Metadaten enthalten Hilfsskripte, Dateiattribute und beschreibende Informationen zum Paket. Die Pakete gibt es in zwei Varianten: Binärpakete, welche die zu installierende Software enthalten, und Quellpakete, welche den Quellcode und die Anweisungen zum Erstellen von Binärpaketen enthalten.

Einer der folgenden grundlegenden Modi muss ausgewählt werden: Paket erstellen, Paket aus einem Tarball erstellen, Paket erneut kompilieren, Konfiguration anzeigen.

ALLGEMEINE OPTIONEN
Diese Optionen können in allen der verschiedenen Modi verwendet werden.
-?, --help

gibt eine längere Aufrufmeldung als gewöhnlich aus.

--version

gibt eine einzelne Zeile aus, welche die Versionsnummer des verwendeten rpm enthält.

--quiet

gibt so wenig wie möglich aus – normalerweise werden nur Fehlermeldungen angezeigt.

-v

gibt ausführliche Informationen aus – normale Meldungen zum Abarbeitungsfortschritt der Routinen werden angezeigt.

-vv

gibt umfangreiche Debugging-Informationen aus.

--rpmfcdebug

aktiviert das Debugging der Erzeugung der Abhängigkeiten.

--rcfile DATEILISTE

lässt rpm die Dateien in der durch Doppelpunkte getrennten DATEILISTE nacheinander einlesen, um Konfigurationsinformationen zu erhalten. Nur die erste Datei in der Liste muss existieren; die Tilde wird dabei zum Wert der Umgebungsvariable $HOME expandiert. Die vorgegebene DATEILISTE ist /usr/lib/rpm/rpmrc:/usr/lib/rpm/redhat/rpmrc:/etc/rpmrc:~/.rpmrc.

--pipe BEFEHL

leitet die Ausgabe von rpm an den angegebenen BEFEHL weiter.

--dbpath VERZEICHNIS

verwendet die im VERZEICHNIS angegebene Datenbank anstelle des vorgegebenen Pfads /var/lib/rpm.

--root VERZEICHNIS

verwendet das Dateisystem in der durch das VERZEICHNIS angegebenen Wurzel für alle Aktionen. Beachten Sie, dass dies bedeutet, dass die Datenbank in diesem VERZEICHNIS für Abhängigkeitsüberprüfungen verwendet wird und Scriptlets (zum Beispiel %post zum Installieren oder %prep zum Erstellen eines Pakets) nach einem Wechsel in das angegebene VERZEICHNIS mit chroot(2) ausgeführt werden.

-D, --define=’MAKRO AUSDRUCK

definiert ein MAKRO mit dem angegebenen AUSDRUCK.

ERSTELLUNGSOPTIONEN
Die allgemeine Form eines Erstellungsbefehls für rpm lautet:

rpmbuild -bPHASE|-rPHASE|-tPHASE [ Rpmbuild-Optionen
] DATEI …

Das verwendete Argument ist -b, falls eine Spec-Datei zum Erstellen des Pakets eingesetzt wird, -r, wenn ein Quellpaket erneut erstellt werden soll und -t, falls rpmbuild in einer (gegebenenfalls komprimierten) Tar-Datei nach der zu verwendenden Spec-Datei suchen soll. Nach dem ersten Argument gibt das nächste Zeichen (PHASE) die auszuführenden Phasen der Erstellung und Paketierung an. Folgende Phasen sind möglich:

-ba

erstellt sowohl Binär- als auch Quellpakete (nachdem die Erstellungsphasen %prep, %build und %install ausgeführt wurden).

-bb

erstellt ein Binärpaket (nachdem die Erstellungsphasen %prep, %build und %install ausgeführt wurden).

-bp

führt die Erstellungsphase %prep aus der angegebenen Spec-Datei aus. Normalerweise beinhaltet diese das Entpacken der Quellen und das Anwenden aller Patches, sofern vorhanden.

-bc

führt die %build-Phase in der Spec-Datei aus (nach dem Ausführen der %prep-Phase). Dies beinhaltet im Allgemeinen einen Aufruf von make oder etwas Gleichbedeutendem.

-bi

führt die %install-Phase in der Spec-Datei aus (nach dem Ausführen der %prep- und %build-Phasen). Dies beinhaltet im Allgemeinen einen Aufruf von make install oder etwas Gleichbedeutendem.

-bl

führt eine Listenüberprüfung aus. Der %files-Abschnitt in der Spec-Datei wird Makro-expandiert und es wird überprüft, ob jede der angegebenen Dateien existiert.

-bs

erstellt nur das Quellpaket.

Die folgenden Optionen können außerdem verwendet werden:
--buildroot
VERZEICHNIS

ersetzt BuildRoot bei der Erstellung eines Pakets durch das angegebene VERZEICHNIS.

--clean

entfernt den Dateibaum der Erstellung, nachdem die Pakete erstellt wurden.

--nobuild

führt keine Erstellungsphasen aus. Dies ist zum Testen von Spec-Dateien nützlich.

--noprep

führt die %prep-Phase nicht aus, selbst wenn diese in der Spec-Datei vorhanden ist.

--noclean

führt die Erstellungsphase %clean nicht aus, selbst wenn diese in der Spec-Datei vorhanden ist.

--nocheck

führt die Erstellungsphase %check nicht aus, selbst wenn diese in der Spec-Datei vorhanden ist.

--nodebuginfo

erstellt keine Debuginfo-Pakete.

--nodeps

überprüft keine Erstellungsabhängigkeiten.

--rmsource

entfernt die Quellen nach der Erstellung (kann auch für sich allein verwendet werden, zum Beispiel »rpmbuild --rmsource foo.spec«).

--rmspec

entfernt die Spec-Datei nach der Erstellung (dies kann auch für sich allein verwendet werden, zum Beispiel »rpmbuild --rmspec foo.spec«).

--short-circuit

springt direkt zu der angegebenen Erstellungsphase (das heißt, überspringt alle Phasen, die zu der angegebenen Phase führen). Dies ist nur mit -bc, -bi und -bb zulässig. Dies ist nur für lokale Testzwecke nützlich. Auf diese Weise erstellte Pakete werden mit einer nicht auflösbaren Abhängigkeit versehen, um deren versehentliche Verwendung zu verhindern.

--build-in-place

erstellt aus lokal ausgecheckten Quellen. Dabei wird _builddir auf das aktuelle Arbeitsverzeichnis gesetzt. Die Auswertung von -n und untar in der Erstellungsphase %setup und das Löschen von buildSubdir wird übersprungen.

--target PLATTFORM

interpretiert beim Erstellen eines Pakets die PLATTFORM als arch-vendor-os und setzt die Makros %_target, %_target_cpu und %_target_os entsprechend.

--with OPTION

aktiviert die Konfigurationsoption OPTION für die Erstellung.

--without OPTION

deaktiviert die Konfigurationsoption OPTION für die Erstellung.

OPTIONEN ZUM NEU ERSTELLEN UND NEU KOMPILIEREN
Es gibt zwei weitere Möglichkeiten, die Erstellung mit rpm anzustoßen:

rpmbuild --rebuild|--recompile QUELLPAKET …

Wenn es auf diese Weise aufgerufen wird, installiert rpmbuild das benannte Quellpaket und führt die %prep-Phase (die Vorbereitung), die Kompilierung und die Installation aus. Zusätzlich erstellt die Option --rebuild ein neues Binärpaket. Wenn die Erstellung abgeschlossen ist, werden das Erstellungsverzeichnis (wie in --clean) und die Quell- sowie Spec-Dateien gelöscht.

Diese Optionen wurden nun durch die -r*-Optionen ersetzt, die eine weitaus genauere Steuerung ermöglichen, welche Erstellungsphasen ausgeführt werden sollen.

SHOWRC
Der Befehl

rpmbuild --showrc

zeigt die Werte an, die rpmbuild für alle Optionen anwenden wird, die gegenwärtig in den Konfigurationsdateien rpmrc und macros gesetzt sind.

DATEIEN

Rpmrc-Konfiguration
/usr/lib/rpm/rpmrc
/usr/lib/rpm/redhat/rpmrc
/etc/rpmrc
~/.rpmrc

Makro-Konfiguration
/usr/lib/rpm/macros
/usr/lib/rpm/redhat/macros
/etc/rpm/macros
~/.rpmmacros

Temporär
/var/tmp/rpm*

SIEHE AUCH

gendiff(1),
popt(3),
rpm(8),
rpm2cpio(8),
rpmkeys(8)
rpmspec(8),
rpmsign(8),

rpmbuild --help - da rpm benutzerdefinierte Optionen über Popt-Aliase unterstützt, können wir unmöglich garantieren, dass die Beschreibungen in diesem Handbuch exakt dem entsprechen, was verfügbar ist.

http://www.rpm.org/ <URL:http://www.rpm.org/>;

AUTOREN

Marc Ewing <marc [AT] redhat.com>
Jeff Johnson <jbj [AT] redhat.com>
Erik Troan <ewt [AT] redhat.com>

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann [AT] gmail.com> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german [AT] lists.org>.