.\" -*- coding: UTF-8 -*- .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" Generated by scdoc 1.11.4 .\" Complete documentation for this program is not available as a GNU info page .nh .ad l .\" Begin generated content: .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH RPMBUILD 1 "8. Januar 2026" "RPM 6.0.1" .PP .SH BEZEICHNUNG rpmbuild \- RPM\-Paket(e) bauen .PP .SH ÜBERSICHT \fBrpmbuild\fP \fB\-b\fP​\fIPHASE\fP [\fIOptionen\fP] \fISPEC\-DATEI\fP … .PP \fBrpmbuild\fP \fB\-r\fP​\fIPHASE\fP [\fIOptionen\fP] \fIQUELLPAKET\fP … .PP \fBrpmbuild\fP \fB\-t\fP​\fIPHASE\fP [\fIOptionen\fP] \fITAR\-ARCHIV\fP … .PP \fBrpmbuild\fP {\fB\-\-rebuild\fP|\fB\-\-recompile\fP} [\fIOptionen\fP] \fIQUELLPAKET\fP … .PP .SH BESCHREIBUNG \fBrpmbuild\fP wird zum Bau von Softwarepaketen im RPM\-Format in einer automatisierten und nachvollziehbaren Weise verwendet. .PP Ein \fIPaket\fP 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. .PP Die \fBPakete\fP gibt es in zwei Varianten: Binärpakete, welche die zu installierende Software enthalten, und Quellpakete, welche den Quellcode und die Anweisungen zum Bauen von Binärpaketen enthalten. .PP .SH AKTIONEN \fB\-b\fP​\fIPHASE\fP .RS 4 erstellt die angegebene \fIPHASE\fP aus einer Spec\-Datei. .PP .RE \fB\-r\fP​\fIPHASE\fP .RS 4 erstellt die angegebene \fIPHASE\fP aus einem Quell\-RPM\-Paket. .PP .RE \fB\-t\fP​\fIPHASE\fP .RS 4 erstellt die angegebene \fIPHASE\fP aus einem \fBtar\fP(5)\-Archiv. .PP .RE \fB\-\-rebuild\fP, \fB\-\-recompile\fP .RS 4 Kompatibilitäts\-Aliase für \fB\-ra\fP. .PP .RE Pakete werden in vier Etappen erstellt: Einlesen, Bauen, Zusammenfügen und Bereinigen. Die beiden mittleren Etappen sind weiter in die unten aufgeführten \fIPhasen\fP unterteilt, die separat erstellt werden können. Das Erstellen einer \fIPhase\fP bedeutet, dass alle vorhergehenden Phasen bis einschließlich der angegebenen Phase ausgeführt werden, sofern nicht anders angegeben. .PP .SS Zusammenfügephasen Die Zusammenfügephasen erstellen Pakete und sind der primäre Weg der Interaktion mit \fBrpmbuild\fP. Im Zweifelsfall wählen Sie eine von diesen aus. .PP \fBa\fP .RS 4 Erstellt sowohl Quell\- als auch Binärpakete. Dies ist keine eigentliche Phase, sondern eine Kombination aus \fBb\fP und \fBs\fP, mit dem Unterschied, dass auf diese Weise erstellte Pakete ein Cookie enthalten, das anzeigt, dass sie aus demselben Bau stammen. Bei Erfolg wird das Bauverzeichnis entfernt. .PP .RE \fBb\fP .RS 4 Erstellt nur die Binärpakete. Bei Erfolg wird das Bauverzeichnis entfernt. .PP .RE \fBr\fP .RS 4 baut nur das Quellpaket und wertet dabei dynamische Bauabhängigkeiten aus. Die Phasen \fB%prep\fP und \fB%generate_buildrequires\fP werden durchlaufen, bevor ein Paket erstellt wird. Im Abschnitt \fBDYNAMISCHE BAUABHÄNGIGKEITEN\fP finden Sie weitere Details hierzu. .PP .RE \fBs\fP .RS 4 baut nur das Quellpaket. Es werden keine Bauphasen durchlaufen. .PP .RE .SS Bauphasen Die Bauphasen erzeugen die zu paketierenden Artefakte, typischerweise durch Patchen und Kompilieren der Quellen und Installieren der Binärdateien im »buildroot«. Diese Phasen entsprechen im Allgemeinen Spec\-Datei\-Abschnitten wie \fB%prep\fP, \fB%build\fP oder \fB%install\fP, es gibt jedoch einige, die implizit sind. .PP Das separate Durchlaufen dieser Phasen ist im Allgemeinen nur beim Paketieren neuer Software im RPM\-Format und/oder bei der Fehlerbehebung sinnvoll. Sie sind unten in der Reihenfolge der Ausführung aufgeführt, wobei der entsprechende Spec\-Datei\-Abschnitt gegebenenfalls in Klammern steht. .PP \fBp\fP (%prep) .RS 4 entpackt die Quellen und wendet eventuelle Patches an. .PP .RE \fBd\fP (%generate_buildrequires) .RS 4 Überprüft dynamische Bauabhängigkeiten und baut das Paket \fIbuildreqs.nosrc.rpm\fP, falls etwas fehlt. Es wird nichts anderes gebaut. .PP .RE \fBf\fP (%conf) .RS 4 konfiguriert die Quellen. Dies beinhaltet im Allgemeinen einen Aufruf von \&\fB./configure\fP oder etwas Gleichbedeutendem. .PP .RE \fBc\fP (%build) .RS 4 kompiliert die Quellen. Dies beinhaltet im Allgemeinen einen Aufruf von \fBmake\fP(1) oder etwas Gleichbedeutendem. .PP .RE \fBi\fP (%install und %check) .RS 4 installiert die Binärdateien in »buildroot«. Dies beinhaltet im Allgemeinen einen Aufruf von \fBmake install\fP und \fBmake check\fP oder etwas Gleichbedeutendem. .PP .RE \fBl\fP .RS 4 führt eine Listenüberprüfung aus. Der \fB%files\fP\-Abschnitt in der Spec\-Datei wird Makro\-expandiert und es wird überprüft, ob jede der angegebenen Dateien existiert. Dies erfordert, dass ein vorheriger Bauvorgang bis zur \fB%install\fP\-Phase ausgeführt wurde. .PP .RE .SH ARGUMENTE \fISPEC\-DATEI\fP .RS 4 Eine Spec\-Datei für RPM. .PP .RE \fBQUELLPAKET\fP .RS 4 Ein RPM\-Quellpaket (mit der Endung \fI.src.rpm\fP). .PP .RE \fITAR\-ARCHIV\fP .RS 4 Ein \fBtar\fP(5)\-Archiv, das optional komprimiert sein kann. Um direkt mit \fBrpmbuild\fP erstellt werden zu können, muss ein Archiv eine Spec\-Datei entweder mit dem Namen \fISpecfile\fP oder mit der Endung \fI.spec\fP enthalten. .PP .RE .SH OPTIONEN \fB\-\-build\-in\-place\fP .RS 4 baut aus lokal ausgecheckten Quellen im aktuellen Arbeitsverzeichnis. Der Bau\-Dateibaum ist so aufgebaut, als ob \fB%setup\fP verwendet worden wäre. Allerdings verweist \fB%builddir\fP/\fB%buildsubdir\fP zurück auf das aktuelle Arbeitsverzeichnis. \fB%prep\fP wird komplett übersprungen. .PP .RE \fB\-\-clean\fP .RS 4 entfernt den Bau\-Dateibaum, nachdem die Pakete gebaut wurden (Vorgabe). .PP .RE \fB\-\-nobuild\fP .RS 4 führt keine Bauphasen aus. Dies ist zum Testen von Spec\-Dateien nützlich. .PP .RE \fB\-\-nocheck\fP .RS 4 führt die \fB%check\fP\-Phase nicht aus, selbst wenn diese in der Spec\-Datei vorhanden ist. .PP .RE \fB\-\-noclean\fP .RS 4 führt die \fB%clean\fP\-Phase nicht aus, selbst wenn diese in der Spec\-Datei vorhanden ist. .PP .RE \fB\-\-nodebuginfo\fP .RS 4 baut keine Debuginfo\-Pakete. .PP .RE \fB\-\-nodeps\fP .RS 4 überprüft keine Bauabhängigkeiten. .PP .RE \fB\-\-noprep\fP .RS 4 führt die Bauphase \fB%prep\fP nicht aus, auch wenn sie in der Spec\-Datei vorhanden ist. Dies setzt voraus, dass ein anderer \fBrpmbuild\fP\-Lauf stattgefunden hat, bei dem \fB%prep\fP bereits ausgeführt wurde. .PP .RE \fB\-\-rmsource\fP .RS 4 entfernt die Quellen nach dem Bau (kann auch für sich allein verwendet werden, zum Beispiel \fBrpmbuild\fP \fB\-\-rmsource foo.spec\fP). Beachten Sie, dass per Definition \fBNoSource\fP\- und \fBNoPatch\fP\- Dateien keine Quellen sind und daher von dieser Option nicht beeinflusst werden. .PP .RE \fB\-\-rmspec\fP .RS 4 entfernt die Spec\-Datei nach dem Bau (dies kann auch für sich allein verwendet werden, zum Beispiel \fBrpmbuild\fP \fB\-\-rmspec foo.spec\fP). .PP .RE \fB\-\-rpmfcdebug\fP .RS 4 gibt Debug\-Informationen zur Dateiklassifizierung und Abhängigkeitserzeugung aus. .PP .RE \fB\-\-scm\fP=\fISCM\fP .RS 4 wählt das angegebene \fISCM\fP zur Verwendung mit \fB%autosetup\fP, falls keines in der Spec\-Datei angegeben ist. Beachten Sie, dass nicht alle Werte für \fISCM\fP, zum Beispiel \fBpatch\fP (die Vorgabe) sowie \fBgendiff\fP, \fBgit\fP oder \fBquilt\fP mit allen in der \fB%autosetup\fP\-Zeile angegebenen Patches und Optionen funktionieren, insbesondere mit der Option \fB\-p\fP\fIN\fP. .PP .RE \fB\-\-short\-circuit\fP .RS 4 springt direkt zu der angegebenen Phase (das heißt, überspringt alle Phasen, die zu der angegebenen Phase führen). Dies ist nur mit \fB\-bc\fP, \fB\-bi\fP und \fB\-bb\fP zulässig. Dies ist nur für lokale Testzwecke nützlich. Auf diese Weise gebaute Pakete werden mit einer nicht auflösbaren Abhängigkeit versehen, um deren versehentliche Verwendung zu verhindern. .PP .RE \fB\-\-with\fP \fIOPTION\fP .RS 4 aktiviert die Konfigurationsoption \fIOPTION\fP für den Bau. .PP .RE \fB\-\-without\fP \fIOPTION\fP .RS 4 deaktiviert die Konfigurationsoption \fIOPTION\fP für den Bau. .PP .RE Siehe \fBrpm\-common\fP(8) für die Optionen, die allen Aktionen gemeinsam sind. .PP .SH "DYNAMISCHE BAUABHÄNGIGKEITEN" Wenn die \fB%generate_buildrequires\fP\-Phase läuft und einige der neu erzeugten Bauabhängigkeiten nicht erfüllt werden konnten, baut \fBrpmbuild\fP ein vorläufiges Quellpaket, das die neuen Bauabhängigkeiten enthält und mit \fIbuildreqs.nosrc.rpm\fP endet, und beendet sich mit dem Code 11. Dieses Paket kann dann anstelle des originalen Quellpakets verwendet werden, um die fehlenden Bauabhängigkeiten auf die übliche Weise aufzulösen und zu installieren, beispielsweise mit \fBdnf\-builddep\fP(8). .PP In einer Spec\-Datei kann es mehrere Schichten dynamischer Bauabhängigkeiten geben; das Vorhandensein einer spezifischen Bauabhängigkeit im System kann beim nächsten Bau aus dem gleichen Quellpaket neue Bauabhängigkeiten hervorbringen. Um sicherzustellen, dass alle zum Ausführen von \fBrpmbuild\fP mit der Option \fB\-br\fP erforderlichen Bauabhängigkeiten erfüllt sind, ist es der einfachste Weg, die neuen Abhängigkeiten des \fIbuildreqs.nosrc.rpm\fP\-Pakets zu installieren und die gesamte Prozedur so oft zu wiederholen, bis \fBrpmbuild\fP nicht mehr mit dem Code 11 beendet wird. .PP Falls die Option \fB\-br\fP mit \fB\-\-nodeps\fP gekoppelt wird, wird stets der Exit\-Code 11 zurückgegeben und ein \fIbuildreqs.nosrc.rpm\fP\-Paket gebaut. .PP .SH UMGEBUNGSVARIABLEN \fBRPM_BUILD_NCPUS\fP .RS 4 Setzt die automatische Erkennung der Anzahl der CPUs, die für parallelisierte Abschnitte des Baus verwendet werden, außer Kraft. .PP .RE .SH EXIT\-STATUS Bei Erfolg wird 0 zurückgegeben, anderenfalls ein Fehlercode ungleich Null. .PP Pakete mit einem Abschnitt \fB%generate_buildrequires\fP geben den Code 11 zurück, wenn die \fBDYNAMISCHEN BAUABHÄNGIGKEITEN\fP nicht erfüllt sind. .PP .SH BEISPIELE \fBrpmbuild \-\-rebuild hello\-1.\&0\-1.\&src.\&rpm\fP .RS 4 Baut Binär\- und Quellpakete aus dem Quellpaket \fIhello\-1.0\-1.src.rpm\fP. .PP .RE \fBrpmbuild \-bb \-\-nocheck \-\-with openssl hello.\&spec\fP .RS 4 Baut Binärpakete aus der Spec\-Datei \fIhello.spec\fP, wobei die \fB%check\fP\-Phase (falls vorhanden) übersprungen und die Unterstützung für \fBopenssl\fP\-Unterstützung als Baubedingung aktiviert wird (in der Annahme, dass eine solche in der Spec\-Datei angegeben ist). .PP .RE \fBrpmbuild \-ta hello\-2.\&0.\&tar.\&gz\fP .RS 4 Erstellt Binär\- und Quellpakete aus dem komprimierten Tarball \fIhello\-2.0.tar.gz\fP, vorausgesetzt, das Archiv enthält eine gültige Spec\-Datei (siehe \fITAR\-ARCHIV\fP für Details). .PP .RE \fBrpmbuild \-bc hello.\&spec\fP .RS 4 Baut \fIhello.spec\fP bis einschließlich der \fB%build\fP\-Phase, das heißt, ohne tatsächlich Pakete zu erstellen. .PP .RE \fBrpmbuild \-bi \-\-short\-circuit hello.\&spec\fP .RS 4 führt nur die \fB%install\fP\-Phase von \fIhello.spec\fP aus und überspringt alle vorherigen Phasen. Dies setzt einen vorherigen Durchlauf von mindestens bis zur \fB%build\fP\-Phase voraus; siehe vorheriges Beispiel. Nützlich, um vollständige Neuerstellungen zu vermeiden, wenn Sie am Abschnitt \fB%files\fP eines Pakets arbeiten. .PP .RE .SH DATEIEN Siehe \fBrpm\-common\fP(8) .PP .SH "SIEHE AUCH" \fBgendiff\fP(1), \fBpopt\fP(3), \fBrpm\fP(8), \fBrpm\-common\fP(8), \fBrpmbuild\-config\fP(5), \fBrpm2cpio\fP(1), \fBrpmkeys\fP(8), \fBrpmspec\fP(1), \fBrpmsign\fP(1), \fBrpm\-setup\-autosign\fP(1) \fBrpm\-macros\fP(7) .PP \fBhttp://www.\&rpm.\&org/\fP .PP .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann und Christoph Brinkhaus erstellt. .PP Diese Übersetzung ist Freie Dokumentation; lesen Sie die .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. .PP Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer: .MT debian-l10n-german@lists.debian.org .ME .