Alle Quellpakete haben die Erweiterung .src.rpm
(Source-RPM).
![]() | Tipp |
---|---|
Quellpakete können vom Installationsmedium auf die Festplatte kopiert und mit YaST entpackt werden. Sie werden im Paket-Manager jedoch nicht als installiert ( |
Die folgenden Verzeichnisse müssen für rpm und rpmbuild in /usr/src/packages
vorhanden sein (es sei denn, Sie haben spezielle Einstellungen in einer Datei, wie /etc/rpmrc
, festgelegt):
SOURCES
für die originalen Quellen (.tar.bz2
oder .tar.gz
files, etc.) und für die distributionsspezifischen Anpassungen (meistens .diff
- oder .patch
-Dateien)
SPECS
für die .spec-Dateien, die ähnlich wie Meta-Makefiles den build-Prozess steuern
BUILD
Alle Quellen in diesem Verzeichnis werden entpackt, gepatcht und kompiliert.
RPMS
Speicherort der fertigen Binärpakete
SRPMS
Speicherort der Quell-RPMs
Wenn Sie ein Quellpaket mit YaST installieren, werden alle notwendigen Komponenten in /usr/src/packages
installiert: die Quellen und Anpassungen in SOURCES
und die relevanten .spec
-Dateien in SPECS
.
![]() | Warnung |
---|---|
Experimentieren Sie nicht mit Systemkomponenten ( |
Das folgende Beispiel verwendet das wget.src.rpm
-Paket. Nach dem Installieren des Pakets mit YaST sollten Sie über Dateien ähnlich der in folgender Liste verfügen:
/usr/src/packages/SOURCES/nops_doc.diff /usr/src/packages/SOURCES/toplev_destdir.diff /usr/src/packages/SOURCES/wget-1.9.1+ipvmisc.patch /usr/src/packages/SOURCES/wget-1.9.1-brokentime.patch /usr/src/packages/SOURCES/wget-1.9.1-passive_ftp.diff /usr/src/packages/SOURCES/wget-LFS-20040909.tar.bz2 /usr/src/packages/SOURCES/wget-wrong_charset.patch /usr/src/packages/SPECS/wget.spec
Mit rpmbuild -b X
/usr/src/packages/SPECS/wget.spec wird die Kompilierung gestartet. X
ist ein Platzhalter für verschiedene Stufen des build-Prozesses (Einzelheiten siehe in --help
oder der RPM-Dokumentation). Nachfolgend wird nur eine kurze Erläuterung gegeben:
-bp
Bereiten Sie Quellen in /usr/src/packages/BUILD
vor: entpacken und patchen.
-bc
Wie -bp
, jedoch zusätzlich kompilieren.
-bi
Wie -bp
, jedoch zusätzlich die erstellte Software installieren. Vorsicht: Wenn das Paket die Funktion BuildRoot nicht unterstützt, ist es möglich, dass Konfigurationsdateien überschrieben werden.
-bb
Wie -bi
, jedoch zusätzlich das Binärpaket erstellen. Nach erfolgreicher Kompilierung sollte das Binärpaket in /usr/src/packages/RPMS
sein.
-ba
Wie -bb
, jedoch zusätzlich den Quell-RPM erstellen. Nach erfolgreicher Kompilierung sollte dieses in /usr/src/packages/RPMS
liegen.
--short-circuit
Einige Schritte überspringen.
Der erstellte Binär-RPM kann nun mit rpm -i
oder vorzugsweise mit rpm -U
erstellt werden. Durch die Installation mit rpm wird er in die RPM-Datenbank aufgenommen.