c-code.png

Einführung in die Programmiersprache C

C verstehen

Die meisten Anwendungen, die für Linux verfügbar sind, haben die Entwickler in C oder C++ programmiert. Das spielt für die Installation eines fertigen Pakets keine Rolle, doch in seltenen Fällen müssen Sie in den Quelltext schauen.

Haben Sie ein Programm im Internet entdeckt, das nur als Quelltextarchiv verfügbar ist? Solche Archive erkennen Sie meist an einer der Endungen .tar.gz, .tgz oder .tar.bz2. Eine Archivdatei herunterzuladen und auszupacken, ist noch der leichteste Schritt: Die Dateimanager von KDE und Gnome bieten per Rechtsklick auf die Archivdatei entsprechende Optionen, und auch auf der Kommandozeile geht es schnell mit einem der folgenden drei Befehle (abhängig von der Endung):

tar xzf archivdatei.tgz
tar xzf archivdatei.tar.gz
tar xjf archivdatei.tar.bz2

Sicherheitshalber sollten Sie diese Kommandos in einem neu angelegten Verzeichnis ausführen, in das Sie vorher nur das Archiv kopiert haben – zwar entsteht beim Entpacken meist ein neuer Ordner, der einen ähnlichen Namen wie die Archivdatei trägt, in seltenen Fällen landen aber auch alle im Archiv gesicherten Dateien im aktuellen Verzeichnis (und "müllen" es damit zu).

Programm übersetzen

Mit den Quelldateien kann Linux zunächst nichts anfangen, denn sie sind nicht ausführbar. Sie müssen erst mit einem C-Compiler und weiteren Hilfsprogrammen ein ausführbares Programm erstellen (kompilieren) und dann installieren. Das klappt nur, wenn auf dem Rechner die Entwicklungsumgebung installiert ist. Geben Sie probeweise gcc --version ein: Wenn der C-Compiler installiert ist, erhalten Sie ein paar Zeilen mit Versionsinformationen, anderenfalls eine Fehlermeldung.

Fehlt der Compiler, holen Sie die Installation der Entwicklertools nach. Unter Ubuntu/Kubuntu erledigen Sie das mit folgendem Befehl:

sudo apt-get install build-essential

Unter OpenSuse erreichen Sie das Ziel mit folgendem Kommando:

sudo zypper in -t devel_C_C++

In beiden Fällen landet eine ganze Reihe von neuen Paketen auf Ihrem Rechner, die Tools laden diese aus den Repositories der Distributionen herunter.

Dreischritt

Meist folgt nach dem Entpacken der Quelltexte der so genannte klassische Installationsdreischritt configure; make; make install:

./configure
make
sudo make install

Alle drei Befehle führen dazu, dass Ihr Bildschirm sich mit Unmengen an Systemmeldungen füllt. Was passiert hier alles?

Der erste Schritt ./configure (der unbedingt mit einem Punkt und Schrägstrich vor dem Wort "configure" eingegeben werden muss) startet das im aktuellen Verzeichnis liegende Shell-Skript namens configure: Dieses hat der Entwickler für Sie erstellt, es hat die Aufgabe, sich auf Ihrem Linux-System genau umzusehen. Es prüft, welches Betriebssystem und welche Version Sie verwenden (das gleiche Quelltextarchiv lässt sich in der Regel auch auf anderen Unix-Varianten verwenden), welcher Compiler installiert ist (unter Linux meistens der GNU C Compiler gcc) und ob alle benötigten Bibliotheken in ausreichend aktuellen Versionen vorliegen. Ist alles zur vollen Zufriedenheit von configure, dann erzeugt das Skript ein Makefile: Das ist ein "Rezept", welches festlegt, in welcher Reihenfolge die Quelldateien mit bestimmten Tools in fertige, ausführbare Programme übersetzt werden. Da die meisten Programme mit verschiedenen Linux-Versionen und weiteren Betriebssystemen wie FreeBSD oder teilweise sogar Windows kompatibel sind, gibt es kein einheitliches Makefile – configure untersucht den Rechner und erstellt es passend für Ihren PC.

Das Makefile brauchen Sie für die nächsten beiden Schritte. Wenn Sie das Dienstprogramm make aufrufen, arbeitet es Ihr frisch erstelltes Makefile der Reihe nach ab: Das Makefile enthält eine rezeptähnliche Auflistung, was alles in welcher Reihenfolge geschehen muss, um ein fertiges (ausführbares) Programm zu erzeugen. Die beiden Schritte ./configure und make können je nach Umfang des Programmes viel Zeit benötigen.

Schließlich kopiert sudo make install alle erstellten Dateien an die vorgesehenen Stellen in Ihrem Dateisystem: Programme selbst landen meist unter /usr/bin oder /usr/local/bin, Hilfeseiten (man pages) unter /usr/share/man oder /usr/local/share/man, Konfigurationsdateien in /etc usw. Für diese Kopieraktionen sind Root-Rechte nötig, darum steht vor dem Kommando make install noch sudo.

Damit ist die Installation abgeschlossen: Wenn das erstellte Programm funktioniert, können Sie das Verzeichnis, in dem Sie die Übersetzung durchgeführt haben, wieder löschen.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

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

Deutschland

Ähnliche Artikel

  • Splint und Co: Tools zur statischen Code-Analyse
    Zwar finden Compiler Syntaxfehler in Programmen, aber auch syntaktisch korrekter Code kann Ungenauigkeiten, logische Fehler oder veraltete Funktionen beinhalten. Solche Probleme spüren Sie mit Quellcode-Analyzern auf.
  • Auf Trab gebracht
    Dualcore-Prozessoren sind längst Standard, Quadcores im Kommen. Mit OpenMP geben Sie ihren Programmen Zugriff auf diese Rechenleistung.
  • Mehr Komfort
    Von einfachen Abfragen bis hin zu komplexen Menüs: Mit dem Toolkit Dialog bauen Sie eine grafische Oberfläche für Shell-Skripte, die oft nicht mehr als eine zusätzliche Zeile brauchen.
  • Erste Schritte mit Bash-Skripten
    Das Programmieren von Shell-Skripten ist keine Hexerei. Schon mit wenigen Grundkenntnissen sparen Sie durch das Automatisieren alltäglicher Aufgaben viel Zeit.
  • Programmieren für Einsteiger
    Programmierer haben Linux und die zahlreichen Linux-Anwendungen entwickelt. Auch für Neulinge auf diesem Gebiet bietet Linux zahlreiche Optionen – wie Sie hier einen Einstieg finden können, verraten die Artikel unserer aktuellen Titelstrecke.
Kommentare

Infos zur Publikation

EL 03/2016: Sicher im Internet

Digitale Ausgabe: Preis € 9,80
(inkl. 19% MwSt.)

EasyLinux erscheint vierteljährlich und kostet 9,80 Euro. Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 33,30 Euro. Details dazu finden Sie im Computec-Shop.

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

HINWEIS ZU PAYPAL: Die Zahlung ist ohne 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...