Programme selber kompilieren

Auf zu den Quellen

Der bekannte Dreischritt, um Programme aus dem Quelltext zu kompilieren und zu installieren, lautet "./configure", "make", "make install". Doch was verbirgt sich hinter diesen Kommandos?

Warum sollte ein Anwender ein Programm selber "backen", wenn seine Distribution vorkompilierte Pakete bereithält, seien sie im RPM- oder Debian-Format? Böse Zungen unterstellen gerne Versionitis, also den krankhaften Wunsch, stets die neueste Ausgabe eines Tools besitzen zu müssen. Doch diese Unterstellung greift zu kurz. Denn oft gelingt es erst durch das Eigenkompilat, ein Programm exakt an die eigenen Wünsche anzupassen.

Vorbereitung ist alles

Zum Kompilieren gehört ein Compiler und verschiedene andere Tools. Bevor Sie also mit der Arbeit loslegen, müssen Sie eventuell einige Werkzeuge nachrüsten. Wichtig ist in erster Linie der GNU C-Compiler gcc. Er kommt zum Einsatz, sobald Sie einen Quelltext in der Programmiersprache C vor sich haben. Um ein Programm der Sprache C++ (C-Plus-Plus) zu kompilieren, installieren Sie den GNU C++-Compiler g++.

Auch das Paket libstdc++-dev darf nicht fehlen. Es enthält die Header-Dateien zum Entwickeln von C++-Programmen. Sie benötigen diese Dateien, um die Funktionalität von Libraries dynamisch zu nutzen. Pakete mit dem Namen glibc-devel oder glibc-dev sowie libc-dev enthalten die Header-Files zum Kompilieren und Linken von C-Programmen. Je nach Distributor enden die hier angeführten Entwickler-Pakete zumeist auf -devel oder -dev.

Mit den Tools des Paketes binutils linken und assemblieren Sie Objektdateien. So befreit das Binary-Utility strip die übersetzten Dateien von überflüssigem Ballast wie Debug-Informationen und macht sie dadurch schlanker.

Um Programme mit Native Language Support (NLS) zu kompilieren, brauchen Sie das Paket gettext respektive dessen Entwicklerpaket gettext-devel. Native Language Support bedeutet, dass das installierte Programm später Fehlermeldungen und Dialoge in der von Ihnen gewünschten Sprache ausgibt.

Ebenfalls unverzichtbar ist das Tool make. Es übersetzt den Quelltext und installiert das fertige Programm anhand der Anweisungen in einer Datei mit dem Namen GNUmakefile, makefile oder Makefile. Dort stehen die Regeln samt Variablen, die make ausführt.

Als sehr nützlich kann sich das Programm patch erweisen. Es ermöglicht Ihnen das Patchen einer Software: Sie können also aus einer Datei heraus Änderungen oder Versionssprünge einspielen, ohne gleich den gesamten Quellcode einer neuen Version herunterzuladen [1].

Quellen entpacken

Dass Programme im Quelltext häufig in Tarballs verpackt vorliegen, stellt für die meisten Anwender kein Geheimnis dar. So ein Archiv mit den Sourcen entpacken Sie mittels folgendem Kommando: tar xvfz archiv-name.tar.gz

Komprimierte Tarballs mit dem Suffix .tar.bz2 öffenen Sie durch den Befehl tar xvIf archiv-name.tar.bz2 beziehungsweise mit den Optionen xvjf, je nach verwendeter Version des Tape-Archiver tar. Wenn Sie zuvor mehr über den Inhalt des Tarballs erfahren wollen, bevor Sie ihn auf Ihrer Festplatte entpacken, funktioniert das so:

[localhost]~ > tar tvfz vim-6.3-↩
lang.tar.gz | less
drwxr-xr-x mool/mool 0 2004-06-0↩
7 14:29:35 vim63/
drwxr-xr-x mool/mool 0 2004-06-0↩
7 14:29:35 vim63/src/
drwxr-xr-x mool/mool 0 2004-06-0↩
7 14:29:35 vim63/src/po/
-rw-r--r-- mool/mool 3804 2003-0↩
6-20 20:38:48 vim63/src/po/READM↩
E.txt
[…]

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Multimuschel
    Mrxvt ist schlank, wendig, einfach anzupassen und unterstützt mehrere Shell-Sitzungen in einem Terminalfenster.
  • Programme unter Linux kompilieren
  • Mit Make komplexe Aufgaben effizient bearbeiten
    Arbeiten Sie an komplexen Projekten mit mehreren Quelldateien, behält Make den Überblick für Sie. Programmierern, LaTeX-Anwendern oder Systemverwaltern greifen gerne auf dieses nützliche Werkzeug zurück.
  • Installationsprobleme
    Die Installation aktueller Linux-Programme läuft häufig über den "klassischen" Weg, der aus den drei Schritten ./configure, make und make install besteht. Dabei kann allerdings einiges schiefgehen, wenn etwa für das Übersetzen notwendige Pakete fehlen. Schauen wir uns die typischen Probleme an…
  • So beheben Sie Fehler bei der Ausführung von make
    Wenn das configure-Skript fehlerfrei durchgelaufen ist, stehen nur noch make und make install zwischen dem Anwender und der neuen Software. Auch hier steckt der Teufel bisweilen im Detail.
Kommentare

Infos zur Publikation

LU 08/2016: Multimedia

Digitale Ausgabe: Preis € 5,99
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

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

Aktuelle Fragen

Wie kann man das berichtigen
Udo Muelle, 17.07.2016 20:39, 1 Antworten
Fehlschlag beim Holen von http://extra.linuxmint.com/dists/rosa/main/binary-i386/Packages Hash-S...
Installation Genimotion
Horst Müller, 15.07.2016 17:00, 1 Antworten
Hallo, ich kann Genimotion nicht installieren. Folgende Fehlermeldung habe ich beim Aufruf erh...
Probleme beim Hochfahren der Terastaion 5400 mit Unix-Distrib
Sheldon Cooper, 10.07.2016 09:32, 0 Antworten
Hallo ihr lieben, habe seit zwei Tagen das Problem, das das NAS (Raid5) nicht mehr sauber hoch...
Mit Firewire Videos improtieren?
Werner Hahn, 09.06.2016 11:06, 5 Antworten
Ich besitze den Camcorder Panasonic NV-GS330, bei dem die Videos in guter Qualität nur über den 4...
lidl internetstick für linux mint
rolf meyer, 04.06.2016 14:17, 3 Antworten
hallo zusammen ich benötige eure hilfe habe einen lidl-internetstick möchte ihn auf linux mint i...