![]() |
![]() |
![]() |
![]() |
|
|
Software entwickeln unter LinuxPaket-EntwicklungAchim Leitner |
Inhalt |
100 Feder-Lesen
103 Sprache D
106 Perl-Snapshot
110 Coffee-Shop |
Kaum ein Programmierer wird sich über den reichen Vorrat von Bibliotheken, Komponenten und Modulen in der Open-Source-Welt beschweren. Ohne sie wäre aktuelle Linux-Software undenkbar. Selbst einfache Programme sind gegen zig Bibliotheken gelinkt, lesen Konfig-Files und erwarten ihre Icons in einem festen Verzeichnis. Modularisierung ist gut und wichtig, etwa weil sich Bugfixes in einer Shared Library auf alle Programme auswirken, die sie benutzen. Zudem verhindert sie, dass sich Entwickler unnötig mit dem Neu-Erfinden alter Räder quälen.
Die Kehrseite offenbart sich beim Installieren. Das Frustrationspotenzial der Arbeitsbeschaffungsmaßnahme "Bibliotheken nachinstallieren" ist enorm, der Ruf nach einem Installationsprogramm vom Schlage einer »setup.exe« immer wieder zu vernehmen. Warum, fragen sich viele User, bringt das Programm nicht gleich selbst alle Komponenten mit? Meist wäre das unklug, nimmt es den Admins doch die Kontrolle über ihr System. Der bessere Ansatz sind RPM-, DEB- oder sonstige Paketformate, die passend für die jeweilige Distribution geschnürt sind. Auch so lassen sich Abhängigkeiten automatisch auflösen.
Einen neuen, sehr interessanten Ansatz verfolgen Starkits. Das plattformunabhängige Paketformat für Tcl-Programme fasst alle Elemente einer Applikation in einer einzelnen Datei zusammen, sogar inklusive der Konfigurationsfiles. Starkits muss man weder auspacken noch installieren, einfach ausführen genügt. Selbst der Interpreter besteht nur aus einer Datei. Das Deployment reduziert sich auf kopieren und Zugriffsrechte anpassen, fürs Deinstallieren genügt »rm«.
Starkits sind nicht mit statisch gelinkten, monolithischen Monsterprogrammen zu verwechseln. Sie nutzen ein virtuelles Filesystem, in dem alle Komponenten einzeln liegen. So kann jeder das Paket öffnen, um die Bestandteile zu analysieren oder anzupassen. Selbst ausgepackt lässt sich das Programm noch starten oder ganz klassisch installieren.
Starkit-User haben die Wahl: Die Komponenten einzeln in das Zielsystem integrieren oder das Paket als Ganzes nutzen. Beide Varianten haben ihre Vorzüge, aber die zusätzliche Freiheit ist in jedem Fall ein Gewinn für Entwickler und Anwender.
Inhalt |
Versionsnummern der aktuellen stabilen Releases am 14.11.2003 und Änderungen gegenüber dem Vormonat.
SkriptsprachenGuile 1.6.4 Object Rexx 2.3.3 Perl 5.8.2 PHP 4.3.4 Python 2.3.2 Ruby 1.8.0 Tcl 8.4.4
JavaBlackdown 1.4.1-01 IBM Java2 SDK 1.4.1 Kaffee 1.0.7 Sun SDK 1.4.2_02
CompilerBinutils 2.14 Clisp 2.31 Free Pascal 1.0.10 GCC 3.3.2 GForth 0.6.2 GNU Pascal 2.1 Intel C++ 7.1
LibrariesCoin 2.1.0 FLTK 1.1.4 glibc 2.3.2 glut 3.7 GTK+ 2.2.4 libpng 1.2.5 libsdl 1.2.6 libxml 2.6.2 Mesa 5.0.2 OpenSSL 0.9.7c QT 3.2.3 wxWindows 2.4.2 zlib 1.1.4
DebuggerCode Medic 1.1.3 DDD 3.3.8 GDB 6.0 Insight 5.3 Mpatrol 1.4.8 Valgrind 2.0.0
Build-ToolsAutoconf 2.58 Automake 1.7.9 Libtool 1.5 GNU Make 3.80 SWIG 1.3.19
IDEsAnjuta 1.0.2 Code Crusader 3.0.3 C-Forge 3.5 CodeWarrior 6 Eclipse 2.1.2 Emacs 21.3 KDevelop 2.1.5 Kylix 3 Motor 3.2.4 Source-Navigator 5.1.4 VIDE 2.0 VIM 6.2 XEmacs 21.4.14 |