26.02.2014 Aufrufe

EasyLinux Programme und Skripte (Vorschau)

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Guru-Training<br />

C-<strong>Programme</strong><br />

Einführung in die Programmiersprache C<br />

C verstehen<br />

Hans-Georg Eßer<br />

Die meisten Anwendungen, die für<br />

Linux verfügbar sind, haben die Entwickler<br />

in C oder C++ programmiert.<br />

Das spielt für die Installation eines<br />

fertigen Pakets keine Rolle, doch in<br />

seltenen Fällen müssen Sie in den<br />

Quelltext schauen.<br />

Haben Sie ein Programm im Internet<br />

entdeckt, das nur als Quelltextarchiv<br />

verfügbar ist? Solche<br />

Archive erkennen Sie meist an einer der<br />

Endungen .tar.gz, .tgz oder .tar.bz2. Eine<br />

Archivdatei herunterzuladen <strong>und</strong> auszupacken,<br />

ist noch der leichteste Schritt: Die<br />

Dateimanager von KDE <strong>und</strong> Gnome bieten<br />

per Rechtsklick auf die Archivdatei<br />

entsprechende Optionen, <strong>und</strong> auch auf<br />

der Kommandozeile geht es schnell mit<br />

einem der folgenden drei Befehle (abhängig<br />

von der Endung):<br />

Glossar<br />

Bibliotheken: Bibliotheken enthalten<br />

standardisierte Routinen (Programmteile),<br />

die von vielen <strong>Programme</strong>n benutzt<br />

werden können: So verwenden etwa die<br />

meisten KDE-<strong>Programme</strong> den gleichen<br />

Code zum Öffnen von Dateien – es wäre<br />

nun aber Unfug, diesen Code in jedes<br />

KDE-Programm fest einzubinden: Das<br />

würde dazu führen, dass der Code mehrfach<br />

im Hauptspeicher des Rechners<br />

liegt, wenn mehrere KDE-<strong>Programme</strong><br />

ausgeführt werden. Stattdessen landet<br />

dieser Code in einer Bibliothek, die dann<br />

nur ein einziges Mal geladen wird <strong>und</strong> allen<br />

KDE-<strong>Programme</strong>n zur Ver fügung<br />

steht. Die Bibliotheken (engl.: Libraries)<br />

liegen meist in /usr/​lib/​, /usr/​local/​lib/​<br />

oder Unterverzeichnissen davon; einige<br />

wichtige Systembibliotheken liegen direkt<br />

im Ordner /lib.<br />

tar xzf archivdatei.tgz<br />

tar xzf archivdatei.tar.gz<br />

tar xjf archivdatei.tar.bz2<br />

Sicherheitshalber sollten Sie diese Kommandos<br />

in einem neu angelegten Verzeichnis<br />

ausführen, in das Sie vorher nur das Archiv<br />

kopiert haben – zwar entsteht beim Entpacken<br />

meist ein neuer Ordner, der einen ähnlichen<br />

Namen wie die Archivdatei trägt, in<br />

seltenen Fällen landen aber auch alle im Archiv<br />

gesicherten Dateien im aktuellen Verzeichnis<br />

(<strong>und</strong> „müllen“ es damit zu).<br />

Programm übersetzen<br />

Mit den Quelldateien kann Linux zunächst<br />

nichts anfangen, denn sie sind<br />

nicht ausführbar. Sie müssen erst mit einem<br />

C-Compiler <strong>und</strong> weiteren Hilfsprogrammen<br />

ein ausführbares Programm<br />

erstellen (kompilieren) <strong>und</strong> dann installieren.<br />

Das klappt nur, wenn auf dem<br />

Rechner die Entwicklungsumgebung installiert<br />

ist. Geben Sie probeweise gcc<br />

‐ ‐ version ein: Wenn der C-Compiler installiert<br />

ist, erhalten Sie ein paar Zeilen<br />

mit Versionsinformationen, anderenfalls<br />

eine Fehlermeldung.<br />

Fehlt der Compiler, holen Sie die Installation<br />

der Entwicklertools nach. Unter<br />

Ubuntu/​Kubuntu erledigen Sie das mit<br />

folgendem Befehl:<br />

sudo apt‐get install build‐essential<br />

Unter OpenSuse erreichen Sie das Ziel mit<br />

folgendem Kommando:<br />

sudo zypper in ‐t devel_C_C++<br />

In beiden Fällen landet eine ganze Reihe<br />

von neuen Paketen auf Ihrem Rechner,<br />

die Tools laden diese aus den Repositories<br />

der Distributionen herunter.<br />

Dreischritt<br />

Meist folgt nach dem Entpacken der Quelltexte<br />

der so genannte klassische Installationsdreischritt<br />

configure; make; make install:<br />

./configure<br />

make<br />

sudo make install<br />

Die Befehle führen dazu, dass Ihr Bildschirm<br />

sich mit Unmengen an Systemmeldungen<br />

füllt. Was passiert hier alles?<br />

Der erste Schritt ./configure (der unbedingt<br />

mit einem Punkt <strong>und</strong> Schrägstrich<br />

vor dem Wort „configure“ eingegeben<br />

werden muss) startet das im aktuellen<br />

Verzeichnis liegende Shell-Skript namens<br />

configure: Dieses hat der Entwickler für<br />

Sie erstellt. Es hat die Aufgabe, sich auf<br />

Ihrem Linux-System genau umzusehen.<br />

Es prüft, welches Betriebssystem <strong>und</strong> welche<br />

Version Sie verwenden (das gleiche<br />

Quelltextarchiv lässt sich in der Regel<br />

auch auf anderen Unix-Varianten verwenden),<br />

welcher Compiler installiert ist (unter<br />

Linux meistens der GNU C Compiler<br />

gcc) <strong>und</strong> ob alle benötigten Bibliotheken<br />

in ausreichend aktuellen Versionen vorliegen.<br />

Ist alles zur vollen Zufriedenheit<br />

116 www.easylinux.de<br />

<strong>EasyLinux</strong> 03/2013

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!