Kompilieren von Programmen


Viele Programme ,die man zu Linux dazu bekommt,sind schon in Binärformat-also im ausführbaren
Zustand.Trotzdem möchte man nicht immer auf Vorgaben angewiesen sein,es ist auch spannend sich selbst
Programme zu kompilieren.Ich gebe hier anhand eines kleinen Beispiels eine Grundeinführung in die Welt des
kompilierens.Man braucht dazu nicht unbedingt Programmierkenntnisse.
Zu Anfang muß man sicherstellen,daß alle Pakete mit Kompilern installiert sind.
Bei der Installation von RedHat kann man die Werkzeuge im Installer anwählen--es werden gebraucht:

c development
c++ development
x- development

Mit diesen Paketen ist man gut gerüstet.
Als nächstes werden die Sourcecodes (Quelltext) gebraucht.In der Linuxwelt existieren zu allen freien Programmen
die Quelltexte.Diese enthalten das Programm mit Installanleitung und sind sehr oft als Tar-Archive gepackt.
Als Beispiel soll mal die Datei xpacman-src.tar.gz herhalten.Anhand dieser Datei orientiert sich dieser kleine Workshop.

1. Datei downladen
2.mit cd / ins Rootverzeichnis wechseln
3.mkdir tar -ein Verzeichnis,in diesem Fall tar erstellen
4.cp (Quellverzeichnis)xpacman-src.tar.gz /tar-die Datei xpacman-src.tar.gz wird nach /tar kopiert
5.cd /tar -ins neu erstellte tar-Verzeichnis wechseln
6.tar xzvf xpacman-src.tar.gz -entpacken des Archivs-es entsteht das Verzeichnis xpacman-0.11
7.cd /tar/xpacman-0.11 --Wechsel in das neu entstandene Verzeichnis
8. ls
So jetzt wird es spannend.
Viele Quellcodearchive enthalten eine Datei Makefile-das ist eine Art Installer-wie man das von Amiga her kennt.
Normaler weise braucht man bei einem vorhandenen Makefile nur das Programm make zu starten und die Kompilierung
wird wie von Geisterhand ausgeführt.Im Beispiel fehlt die Datei Makefile! Es handelt sich um ein X-Programm, ein
Programm was nur unter einer X-Oberfläche läuft (fwmn2,fwmn95 oder KDE z.B).
Bei X-Programmen wird Makefile mit dem Programm xmkmf aus der Datei Imakefile erzeugt.es geht also weiter:
9.xmkmf eingeben-es wird Makefile erzeugt
10. ls
Nach der Eingabe von ls ist jetzt zu sehen,daß die Datei Makefile erzeugt wurde-oh Wunder!
Jetzt geht es weiter,wie oben kurz beschrieben:
11.make eingeben--aus dem Quelltext wird eine ausführbare Datei xpacman erzeugt
12. ls
Jetzt ist im ganzen Quellcodegewirr xpacman zu erkennen eine Datei,die man unter X-Window zum laufen bekommt.
Xpacman kann man nach /usr/games kopieren und von da aus unter X aufrufen.
Einfach unter einen Windowmanager mit einem Filemanager das Programm aufrufen--kleiner Tip zur Steuerung unter
Apus(amerikanische-keymap)--Tasten y ,x= links/rechts ä,- =hoch/runter q=quit
Das war ein Beispiel für eine X-Kompilierung.

Standartmäßig geht es aber bei den meisten Kompilierungen so ab:

1.Man wechsel in das jeweilige Sourcenverzeichnis
2.man gibt ./configure ein-der Makefile-Kreator checkt alle relevanten Verzeichnisse nach Libs
,Versionen,Kompiler usw durch und erzeugt ein Makefile.
3.make eingeben und die Kompilierung startet.
Je nach Programm kann das eine ganze Weile dauern.Am Ende wird eine Ausführbare Binärdatei "gebaut".

Als Beispiel habe ich kover-0.4.tar.gz  genommen-das ist ein kostenloses KDE-Programm mit dem man CD-Cover erstellen kann.
Allerdings hab ich das Programm unter LinucPPCV5 kompiliert,KDE-Programme verlangen nach bestimmten QT-Versionen.
Wichtig ist auch,daß bei QT die Datei qt-devel installiert werden muß!

Das File muß entpackt werden,Endung tar.gz heißt dann: tar xzvf kover-0.4.tar.gz
Es entsteht ein Verzeichnis kover-0.4
Wechsel in das Verzeichnis : cd /kover-0.4
Jetzt ./configure eingeben-es laufen einige Ausgaben auf dem Bilschirm/Fenster durch und es wird ein Makefile erstelltEinfach make eingeben-der Kompiler startet und baut aus den einzelnen Dateien ein ausführbares Program kover 

Das war eine Kurzeinführung--leider ist es nicht mit jedem Quellcode so leicht-
-auf jeden Fall sollte man sich die Readme und Installfiles ganz genau durchlesen! 
 

Viel Glück !!