3.5. Wie wandelt man ein Source-RPM in ein (Binär)-RPM um?

Keywords: rpm | rebuild | rpmbuild | compilieren

3.5.1

Source-RPMs sind Pakete, die den Quellcode eines Programms sowie eine spec-Datei (die "Bauanleitung" für ein oder mehrere RPMs) enthalten. Wenn man das Programm nutzen will, muss man das Source-RPM in ein "normales" RPM übersetzen. Meist wird dabei der Quellcode compiliert, also in Binärcode übersetzt.

Das Übersetzen erfolgt mit rpm --rebuild foo.src.rpm. Ab SuSE Linux 9.0 (genauer: ab rpm 4.x) muss stattdessen rpmbuild --rebuild foo.src.rpm aufgerufen werden.

Anschließend kann man das Paket per rpm -Uvh /usr/src/packages/RPMS/*/foo.rpm installieren.

Das Übersetzen hat nicht geklappt? Oft fehlt ein *-devel-Paket. Einen Hinweis darauf geben Fehlermeldungen wie z. B. "file not found". In welchem Paket die Datei steckt, kann man mit pin dateiname oder über die Suchfunktion in YaST ermitteln. Nach der Installation des *-devel-Pakets kann man dann den nächsten Anlauf starten, um das gewünschte Source-RPM zu übersetzen.

(cboltz)