Gratiszugabe

Pakete bauen ohne Mehraufwand

01.07.2006
Selbst kompilierte Software fällt durch das Paketmanagement-Raster – oft mit unangenehmen Folgen. Hier schafft Checkinstall unkompliziert Abhilfe.

Viele Programme und Bibliotheken sind unter Linux nicht als fertiges Paket, sondern nur im Quelltext verfügbar. Haben Sie die Software erfolgreich übersetzt, bleibt dennoch ein elementares Problem: Das Paketmanagement sieht die mit make install hinzugefügten Dateien nicht, der Überblick über die installierte Software geht leicht verloren. Darüber hinaus lässt sich die Software oft nur schwer wieder entfernen – längst nicht alle Entwickler fügen dem Makefile das dafür erforderliche Ziel uninstall hinzu. Besondere Schwierigkeiten ergeben sich bei selbst übersetzten Bibliotheken. Benötigt ein via Paketmanager einzurichtendes Programm ein solche Library, wird sie als fehlende Abhängigkeit gemeldet, obwohl sie installiert ist.

Als Ausweg bleibt nur, ein passendes Paket zu bauen. Wollen Sie die übersetzten Binärdateien aber nicht weiterverteilen, lohnt es kaum, ein Paket händisch zu erzeugen – das Programm läuft schließlich auch ohne diesen zusätzlichen Aufwand.

Eine Lösung bietet Checkinstall: Nach der Installation des Skripts [1] bauen Sie RPM-, Debian- oder Slackware-Pakete mit minimalem Aufwand. Im Idealfall genügt es, als Root aus dem Quellverzeichnis heraus checkinstall statt make install aufzurufen, den Pakettyp zu wählen und eine Beschreibung für das Paket einzugeben. Weitere Informationen liefert checkinstall --help.

Checkinstall zapft bestimmte System-Calls an, während make install abläuft. So findet es heraus, welche Dateien in das Paket gehören. In manchen Fällen funktioniert dieses Verfahren nicht. Doch wenn alles glatt geht, stehen Ihnen ohne Zusatzaufwand Pakete zur Verfügung, die mit dem Paketmanager Ihrer Distribution zusammenarbeiten.

Feinabstimmung

Die meisten Informationen wie Version oder Paketname findet Checkinstall selbst heraus. Vor dem Bau des Pakets zeigt es diese Informationen an und ermöglicht es, sie zu verändern. Zwei der Werte verdienen besondere Aufmerksamkeit: Group bezeichnet die Software-Kategorie, in der der Paketmanager das Programm anzeigt. Hier trägt Checkinstall standardmäßig checkinstall ein, sodass alle mit dem Tool gebauten Pakete in einer eigenen Gruppe landen. Möchten Sie das nicht, dann geben Sie stattdessen übliche Kategorien wie Application/Text ein. Unter Requires geben Sie bei Bedarf Paketabhängigkeiten an: Verwenden Sie den Paketnamen in Kleinbuchstaben ohne Versionsnummer und trennen Sie mehrere Einträge durch ein Komma. Fehlen die Abhängigkeiten, kann es wie bei mit make install installierter Software passieren, dass das Programm nicht mehr läuft, wenn Sie benötigte Komponenten deinstallieren.

Wenn Sie Checkinstall zum Erstellen von RPM-Paketen benutzen, schwächt das intern genutzte rpmbuild die Abhängigkeitsproblematik etwas ab: Es untersucht Programm-Binaries auf Bibliotheken, gegen die sie gelinkt sind. Das erfasst allerdings nicht unbedingt alle Abhängigkeiten: Grafische Frontends für Kommandozeilen-Tools zum Beispiel rufen zwar andere Programme auf, sind aber nicht gegen Sie gelinkt.

Mit Checkinstall gebaute Debian-Pakete beschreiben grundsätzlich keine Abhängigkeiten. Auch die manuelle Eingabe von Abhängigkeiten funktioniert im Moment nicht. Einziger Ausweg: Sie rufen Checkinstall mit der Option --review-control auf. Wenn Sie sich mit den Interna von Debian-Paketen auskennen, können Sie hier die control-Datei anpassen und unter anderem Abhängigkeiten spezifizieren. Die entsprechende Option für RPM-Pakete heißt review-spec.

Ob Sie die Abhängigkeitsproblematik nun per Hand korrigieren oder nicht – zwei Vorteile bietet die Installation von selbst kompilierter Software mit Checkinstall auf jeden Fall: Der Paketmanager weiß, dass die Software installiert ist und Sie können sie auf jeden Fall wieder deinstallieren.

Infos

[1] Checkinstall-Homepage: http://asic-linux.com.mx/~izto/checkinstall/

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Paketbau in Eigenregie mit Checkinstall
    Ihr Lieblingsprogramm gibt es nur als Quelltext zum Selberbauen? Kein Problem: Mit Checkinstall bekommen Sie die Software sauber ins System und auch wieder heraus.
  • checkinstall
    Wer unter Linux viel aktuelle Software ausprobiert, kennt das Problem: Neueste Programmversionen existieren oft nur als tar-Archiv und lassen sich lediglich unter Klimmzügen wieder deinstallieren. Checkinstall schafft Abhilfe.
  • Wie am Schnürchen
    In nur wenigen Schritten verwandeln Sie ein Quelltextarchiv in ein vollwertiges Debian-Paket.
  • RPM-Pakete selbst bauen
    Die meiste Software für Linux liegt im Quellcode vor und muss kompiliert werden. Dies geht schnell von der Hand, doch spätestens wenn man eine Anwendung wieder loswerden will, fangen die Probleme an.
  • Software
Kommentare

Infos zur Publikation

LU 08/2015: Cloud-Speicher

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Grammatikprüfung in LibreOffice nachrüsten
Grammatikprüfung in LibreOffice nachrüsten
Tim Schürmann, 24.04.2015 19:36, 0 Kommentare

LibreOffice kommt zwar mit einer deutschen Rechtschreibprüfung und einem guten Thesaurus, eine Grammatikprüfung fehlt jedoch. In ältere 32-Bit-Versionen ...

Aktuelle Fragen

Plugins bei OPERA - Linux Mint 17.1
Christoph-J. Walter, 23.07.2015 08:32, 2 Antworten
Beim Versuch Video-Sequenzen an zu schauen kommt die Meldung -Plug-ins und Shockwave abgestürzt-....
Wird Windows 10 update/upgrade mein Grub zerstören ?
daniel s, 22.07.2015 08:31, 5 Antworten
oder rührt Windows den Bootloader nicht an? das ist auch alles was Google mir nicht beantw...
Z FUER Y UND ANDERE EINGABEFEHLER AUF DER TASTATUR
heide marie voigt, 10.07.2015 13:53, 2 Antworten
BISHER konnte ich fehlerfrei schreiben ... nun ist einiges drucheinander geraten ... ich war bei...
PCLinuxOS lässt sich nicht installieren
Arth Lübkemann, 09.07.2015 18:53, 6 Antworten
Hallo Leute, ich versuche seit geraumer Zeit das aktuelle PCLinuxOS KDE per USB Stick zu insta...
Fernwartung oder wartung im haus
heide marie voigt, 29.06.2015 10:37, 2 Antworten
gerne hätte ich jemanden in Bremen nord, der mir weiter hilft - angebote bitte mit preis HMVoigt