Rpm Paket Basis: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 3: Zeile 3:
 
* Um ein RPM-Paket zu erstellen, benötigen Sie die folgenden Komponenten:
 
* Um ein RPM-Paket zu erstellen, benötigen Sie die folgenden Komponenten:
 
* '''sudo -i'''
 
* '''sudo -i'''
 +
*'''sudo dnf install epel-release'''
 
* '''dnf install fedora-packager rpmdevtools gcc'''
 
* '''dnf install fedora-packager rpmdevtools gcc'''
  

Version vom 19. Juli 2024, 07:03 Uhr

Grundlegendes

  • Ein RPM-Paket ist ein Paketformat, das in Red Hat-basierten Linux-Distributionen wie Fedora und SUSE verwendet wird.
  • Um ein RPM-Paket zu erstellen, benötigen Sie die folgenden Komponenten:
  • sudo -i
  • sudo dnf install epel-release
  • dnf install fedora-packager rpmdevtools gcc

Anlegen der Entwicklungsumgebung

  • rpmdev-setuptree
  • Dieser Befehl ist ein Shell-Skript, welches eine Ordnerstruktur im Homeverzeichnis des Benutzers anlegt
rpmbuild/
├── BUILD
├── BUILDROOT
├── RPMS
├── SOURCES
├── SPECS
└── SRPMS


BUILD
  • Dieses Verzeichnis enthält die Verzeichnisse und Dateien, die während des Build-Prozesses erstellt werden.
  • Hier werden die Quellcode-Dateien entpackt, Kompilierungs- und Build-Vorgänge durchgeführt und die resultierenden Artefakte generiert.
BUILDROOT
  • In diesem Verzeichnis wird das Build-Root-Verzeichnis erstellt.
  • Es enthält die vollständige Verzeichnisstruktur, die für die Installation des Pakets erforderlich ist.
  • Die Dateien und Verzeichnisse in diesem Verzeichnis entsprechen der Verzeichnisstruktur des Zielsystems, auf dem das Paket installiert wird.
RPMS
  • Dieses Verzeichnis enthält die generierten RPM-Pakete nach dem Build-Prozess.
  • Es können mehrere RPM-Pakete vorhanden sein, abhängig von den angegebenen Build-Konfigurationen und den Zielarchitekturen.
SOURCES
  • Hier werden die Quellcode-Dateien und zusätzliche Ressourcen abgelegt, die für den Build-Prozess verwendet werden.
  • Dies kann das Hauptquellcodearchiv, Patches, Konfigurationsdateien oder andere Dateien enthalten, die für den Build benötigt werden.
SPECS
  • In diesem Verzeichnis befindet sich die RPM-Spezifikationsdatei (.spec), die die Anweisungen für den Build-Prozess enthält.
  • Diese Datei definiert die Metadaten des Pakets wie Name, Version, Abhängigkeiten, Build-Anweisungen und Installationsanweisungen.
SRPMS
  • Hier werden die generierten Source-RPMs (SRPMs) gespeichert.
  • Ein SRPM enthält den Quellcode des Pakets sowie die spezifischen Anweisungen zum Erstellen des RPM-Pakets.
  • SRPMs werden normalerweise verwendet, um das Quellpaket zu verteilen und den Build-Prozess auf anderen Systemen zu reproduzieren.