Konkurrenz der Systeme

Seite 8: Portierbarkeit

Der folgende Beitrag ist vor 2021 erschienen. Unsere Redaktion hat seither ein neues Leitbild und redaktionelle Standards. Weitere Informationen finden Sie hier.

An dieser Stelle sei angemerkt, dass viele der besprochenen Open-Source-Programme, inkl. der Entwicklungswerkzeuge selbst, auch in Windows-Versionen existieren. Das liegt an der großen Portierbarkeit von UNIX-Software, die zum einen den offenen Bibliotheken und Compilern und zum anderen dem POSIX-Kompatibilitäts-Standard zu verdanken ist, der von jedem Betriebssystem implementiert werden kann. Windows-Programme lassen sich dagegen nur mit großen Schwierigkeiten und unter Zuhilfenahme von Krücken wie WINE auf andere Betriebssysteme übertragen. Nichtsdestotrotz laufen Linux-Programme unter Windows oft nur eingeschränkt und vermitteln einen wenig akkuraten Eindruck ihrer Funktionalität: Oft wurden die entsprechenden Portierungen schnell als "Proof of Concept" zusammengebastelt und dann ignoriert. Windows als Betriebssystem und ansonsten weitgehend freie Software zu verwenden ist ein wenig gangbarer und wenig sinnvoller Weg.

Installation neuer Programme

Obwohl Distributoren wie SuSE eine riesige Programmauswahl auf ihre CDs und DVDs packen, erfassen sie nur noch einen winzigen Bruchteil der tatsächlich vorhandenen Programme. Und auch sonst gibt es oftmals Gründe, neue Programme zu installieren oder alte upzudaten. Prinzipiell gibt es zwei unterschiedliche Arten, Programme zu installieren: Man erzeugt aus dem Quellcode (meist C/C++) mit einem Compiler Binärdateien, oder man installiert vorkompilierte Linux-Binaries. Ersteres ist einfacher, als man zunächst denkt: Wenn man Glück hat, ist es damit getan, nach dem Entpacken des Archivs drei Befehle in der Shell einzugeben, nämlich "./configure", "make" und "make install". Der Befehl "make" bezieht sich auf ein sogenanntes "Makefile", das die Kompilations- und Installationseinstellungen enthält. Diese muss man in manchen Fällen ändern, wenn z.B. Red Hat und SuSE Mist gebaut und sich nicht auf einen einheitlichen Ort und Namen für eine bestimmte Programmbibliothek geeinigt haben. "make install" verschiebt die Binärdateien in das entsprechende Zielverzeichnis, also z.B. "/usr/local/bin".

So kompliziert ist es also gar nicht, Programme zu übersetzen, und man kann gleich die Gelegenheit nutzen, einen Blick auf den Code zu werfen. Vergleichsweise idiotensicher (und zumindest in der Theorie einfacher als unter Windows) ist die Installation von Programmpaketen, die Binärdateien enthalten. Mit Hilfe eines "Paketmanagers" lassen sich diese Spezialdateien installieren, deinstallieren und updaten, wobei das auf der Shell-Ebene, aber auch über grafische Menüs geschehen kann.

Das Problem hierbei ist allerdings (wieder einmal), dass die Distributoren sich nicht auf einen Standard einigen können. Es gibt unterschiedliche Paketstandards (im Wesentlichen Red Hat und Debian) und unterschiedliche Paketmanager und Front-Ends, die nicht unbedingt optimal miteinander auskommen. Besonders bei der Auflösung von Abhängigkeiten (Paket X erfordert Paket Y) kann es zu Problemen kommen. Weiterhin fehlt es hier besonders bei SuSE an klaren Instruktionen. Hat man sich an einen Paketmanager gewöhnt, ist das Verfahren meist einfacher als bei Windows, denn die üblichen Installationsschritte (Verzeichnisauswahl usw.) entfallen.

Die mangelnde Standardisierung ist nicht nur das Ergebnis von Inkompetenz, sondern auch der Versuch der Distributoren, eine mögliche Einnahmequelle zu kontrollieren, wie z.B. im Falle von Red Hat über das "Red Hat Network" für Online-Updates. Auch die GNOME-Macher Ximian wollen sich den Distributionskanal sichern: In GNOME ist das sogenannte "Red Carpet" System enthalten, mit dem man verschiedene Software- und Info-Kanäle abonnieren und auch Software kaufen kann. Das Geschäftsmodell ist in beiden Fällen leicht nebulös, da sowohl die Bandbreite als auch die Kataloge von Freiwilligen bereitgestellt werden können.

Allen ein wenig in die Suppe gespuckt hat Debian: Die nichtkommerzielle Distribution verfügt seit einiger Zeit über das Tool "apt-get", das, einmal erlernt, sehr komfortabel und schnell das gesamte System auf den neuesten Stand bringt oder Programme aus dem Internet installiert. Dabei nutzt Debian ein Netz von internationalen FTP-Servern (meist von Unis oder Pro-Linux-Unternehmen), die entsprechende Paket-Serien spiegeln. Dummerweise verwendet Debian wie gesagt einen eigenen Standard, während die meisten Pakete im rpm-Format weitergegeben werden.

Solange der Markt sich in diesem Bereich noch nicht sortiert hat, wird die Installation von Programmen unter Linux unnötig kompliziert bleiben. Theoretisch ist ein System, bei dem Software aus einem verteilten, dezentralen Archiv geholt wird, von den Nutzern mit Bewertungen und Kommentaren versehen werden kann und bei Bedarf vollautomatisch aktualisiert wird, mit der heutigen Technik möglich. Damit wäre Windows in Sachen Programminstallation eindeutig überflügelt.