übersetzen von SRPMs

Mit den nachfolgend aufgezeigten Befehlen wird die Umgebung zum übersetzen von SRPMs bzw. zum Bau von RPMs vorbereitet/aufgesetzt.

  • Zum übersetzen von SRPMs wird das Programm rpmbuild benötigt. Folgender Befehl ist auszuführen: su -c 'yum install rpm-build'
  • Ebenfalls wird das Paket yum-utils benötigt. Der Befehl hierfür lautet: su -c 'yum install yum-utils'
  • Leider setzen viele Quellpakete stillschweigend voraus, dass Compiler und ebenfalls die zentralen Entwickler-Bibliotheken und -Werkzeuge bereits installiert sind. Mit dem folgenden Befehl lässt sich unter Fedora alle benötigten Pakete installieren: su -c 'yum install @buildsys-build rpmdevtools'
  • Für den Aufbau des RPMBUILD-Verzeichnisbaumes bietet Fedora ebenfalls Unterstützung an der Befehl lautet: rpmdev-setuptree

Bei CentOS wird durch die Installation von rpmbuild unter dem Pfad /usr/src/redhat das RPMBUILD-Verzeichnis erzeugt. Es empfiehlt im allgemeinen zum Erstellen von RPMs bzw. zur Übersetzung von SRMPs einen eigenen User zu verwenden. Hierzu kann einfach die bestehende Umgebung in das Home-Verzeichnis kopiert werden.

su -
cp -r /usr/src/redhat/ ~/rpmbuild
echo '%_topdir %(echo $HOME)/rpmbuild' ~/.rpmmacros


So jetzt ist fast geschafft, die Umgebung zur Übersetzung von RPMs ist bereit. Jetzt muss noch überprüft werden, ob alle Developer-Pakete installiert sind. Dies kann kann mit folgenden Befehl unter Fedora bzw. CentOS verifiziert und gleich installiert werden: su -c 'yum-builddep src-paketname'. Alternativ via dem Befehl rpm -qp --requires src-paketname herausfinden und diese mit dem Paketmanager nachinstallieren. Alle Vorbereitungen sind abgeschlossen, nun geht’s ans übersetzen des SRPM Paketes. Dies ist ganz einfach und erledigt der nachfolgende Befehl: rpmbuild --rebuild src-paketname