Krypto-Wallets Interviews mit Branchenführern

Perl wird wirklich portabel: Die Zukunft mit cosmopolitan libc und APPerl

Krypto-Wallets Interviews mit Branchenführern
Perl Is Portable (2022)

Erfahren Sie, wie Perl dank der cosmopolitan libc und APPerl als tatsächlich portables Executable neue Möglichkeiten eröffnet – plattformübergreifend, kompakt und einfach zu nutzen auf Windows, Linux und weiteren Betriebssystemen.

Perl, eine der langlebigsten und mächtigsten Skriptsprachen der IT-Welt, hat sich seit seiner Einführung in den frühen 1990er Jahren stetig weiterentwickelt. Doch trotz seiner Flexibilität und Funktionsvielfalt war die plattformübergreifende Nutzung von Perl über verschiedene Betriebssysteme hinweg häufig mit Herausforderungen verbunden. Der Grund lag vor allem in der Notwendigkeit, Perl für jedes System speziell zu kompilieren und die Abhängigkeiten und Modulerweiterungen für verschiedene Umgebungen zu pflegen. Doch 2022 brachte eine bemerkenswerte Entwicklung einen frischen Wind: Perl wurde tatsächlich portabel – dank einer Kombination aus der Cosmopolitan libc und einem innovativen Projekt namens APPerl. Die Cosmopolitan libc ist eine außergewöhnliche C-Bibliothek, die den Bau sogenannter Actually Portable Executables (APEs) ermöglicht.

Diese statisch gelinkten Binärdateien sind in der Lage, auf mehreren Betriebssystemen zu laufen, ohne dass plattformspezifische Anpassungen notwendig sind. Konkret bedeutet das, dass ein einziges Perl-Binary auf Windows, Linux, macOS, BSD, Solaris und sogar auf BIOS-Ebene lauffähig ist. Diese Vielseitigkeit eröffnet völlig neue Horizonte für Systemadministratoren, Entwickler und Anwender. Die Idee dahinter ist so einfach wie genial: Anstatt für jede Zielplattform eine individuelle Perl-Version zu kompilieren und zu pflegen, kann man mit APPerl dieselbe Binärdatei verteilen und einsetzen. Ein Systemadministrator, der sowohl Windows- als auch Linuxmaschinen betreut, muss sich dadurch nicht mehr um unterschiedliche Perl-Builds kümmern.

Entwickler können ihren Anwendern eine native, vorkompilierte Perl-Version anbieten, wodurch die Installation und Nutzung deutlich erleichtert wird. Auch im Bereich DevOps und containerbasierter Umgebungen ergeben sich durch statische, plattformübergreifende Binaries viele Vorteile. Die technische Umsetzung verlangt jedoch einiges an Know-how und Fingerspitzengefühl. Perl ist in C geschrieben und wird traditionell mit speziellen Build-Konfigurationen für jede Plattform erstellt. Die Cosmopolitan libc löst dieses Problem indem sie ihre eigenen Regeln und Mechanismen anwendet.

Beispielsweise ist sie nicht an einen bestimmten Compiler gebunden und ermöglicht so eine flexible Integration der verschiedenen Toolchains. Für die Portierung von Perl wurde zunächst ein sogenanntes miniperl gebaut, eine reduzierte Perl-Variante ohne Erweiterungen, die den Aufbau des vollständigen Perl ermöglicht. Dabei mussten zahlreiche systemnahe Details angepasst werden, darunter der Umgang mit Headerdateien, die Implementierung von POSIX-Funktionen und die Behandlung von Symbolen, die bisher zur Compile-Zeit festgelegt wurden. Ein großer Knackpunkt war die Kompatibilität der getesteten Funktionen und Module auf den verschiedenen Plattformen. Cosmopolitan libc verwendet beispielsweise ein internes ZIP-Dateisystem (zipos), das in APE-Binärdateien funktioniert, aber besondere Anforderungen stellt.

Ein cleverer Trick war die Nutzung von Tools wie objcopy, um aus ELF-Binärdateien die portablen APEs zu erzeugen, was schließlich die Stabilität deutlich steigerte. Auch die Sicherheitsmechanismen des Compilers, wie der Stack Protector von gcc, wurden deaktiviert, da sie mit Cosmopolitan inkompatibel sind. Das Herzstück vieler Perl-Standardmodule sind Konstanten, die unter klassischen Betriebssystemen zur Compile-Zeit bekannt sind. Mit Cosmopolitan mussten diese Laufzeit-konstanten neu via C-Extensions dynamisch geladen werden, was eine tiefgreifende Anpassung erforderte. Viele der Modultests, darunter wichtige Bestandteile wie Errno, Socket und POSIX, konnten so erfolgreich ausgeführt werden.

Das gesamte Perl-Test-Framework half dabei, verbliebene Fehler aufzudecken und die Cosmopolitan libc kontinuierlich um fehlende Funktionen zu erweitern. Doch APPerl geht noch einen Schritt weiter: Die einzelnen Perl-Module und Skripte werden direkt in die binäre Datei als ZIP-Archiv eingebettet. Das bedeutet, dass alle benötigten Dateien im Binary selbst enthalten sind und beim Ausführen wie im normalen Dateisystem zugänglich gemacht werden. Solch eine Integration enthüllt enorme Möglichkeiten für die Distribution von Perl-Anwendungen. Beispielsweise kann man zu APPerl eine Verknüpfung namens perldoc anlegen, die per argv[0]-Wertprüfung automatisch das passende Skript aus dem integrierten ZIP startet.

Besonders spannend ist die praktische Nutzbarkeit unter Windows, einem Einsatzgebiet, in dem Perl trotz seiner Beliebtheit oft Schwierigkeiten hat. Die Integration des Windows-eigenen cmd.exe sowie der Umgang mit Tools wie dem Pager für die Dokumentation zeigten, dass APPerl sich wunderbar der Windows-Welt anpasst. Langwierige Umwege wie das Nachinstallieren von Unix-ähnlichen Umgebungen entfallen. Außerdem wird in Zukunft geplant, den System-Aufruf durch den eigenen Kommandointerpreter (cocmd, eingebettet in Cosmopolitan libc) zu ersetzen, was die Portabilität und Konsistenz weiter erhöhen wird.

Einen weiteren Vorteil bietet die Möglichkeit, Perl als selbstenthaltende Distribution zu präsentieren. APPerl wurde entwickelt als Projekt, das nicht nur ein Binary sondern auch ein Paketierungssystem umfasst, das sogenannte Perl::Dist::APPerl. Dieses erlaubt das Erstellen angepasster Perl-Builds, zugeschnitten für unterschiedliche Einsatzzwecke – von einer schlanken Minimalversion unter 5 Megabyte bis zur vollständigen Standardinstallation mit allen Modulen unter 24 Megabyte. Damit entsteht eine echte Alternative zu etablierten Windows-Versionen wie Strawberry Perl oder ActiveState Perl. Im Alltag zeigte sich APPerl bereits bewährt.

Projekte wie psx_mc_cli, ein PlayStation Memory-Card-Werkzeug, und MHFS, ein persönlicher HTTP-Medienserver, konnten problemlos damit portiert und als kompakte Binärdateien veröffentlicht werden. Zwar gibt es punktuelle Einschränkungen, zum Beispiel bei der Unterstützung älterer Windows-Versionen oder bestimmten Systemaufrufen, doch die Cosmopolitan libc und APPerl befinden sich noch in aktivem Wachstum und versprechen weiterhin Verbesserungen. Die Vorteile von APPerl sind vielfältig. Durch die Nutzung eines einzigen, plattformübergreifenden Binaries wird die Softwareverteilung stark vereinfacht. Entwickler müssen sich nicht mehr um komplexe Build-Prozesse und plattformspezifische Fehler kümmern.

Anwender können einfach eine Datei herunterladen, ausführen und sofort loslegen – ganz ohne aufwändige Installation oder Konfiguration. Dieses neue Perl-Distributionskonzept reduziert zudem den Supportaufwand, da alle Nutzer mit der identischen Version arbeiten. Für Unternehmen und Organisationen, die heterogene Umgebungen verwalten, schafft APPerl so einen großen Mehrwert. Auch die Möglichkeit, Perl-Anwendungen als einzelne, portable ausführbare Dateien zu veröffentlichen, steigert die Attraktivität von Perl in modernen Softwareprojekten, in denen Einfachheit und Portabilität gefragt sind. Zusammenfassend lässt sich sagen, dass die Portierung von Perl auf die Cosmopolitan libc und die Entwicklung von APPerl einen Meilenstein darstellt.

Es modernisiert eine bewährte Sprache und passt sie an die Anforderungen einer zunehmend vielfältigen und plattformübergreifenden IT-Welt an. Während die technologische Basis beständig erweitert wird, wächst auch die Community um das Projekt, was eine vielversprechende Zukunft verspricht. Perl erfindet sich so nicht neu, sondern bekommt mit APPerl ein neues, modernes Kleid, das es jedem erlaubt, diese leistungsstarke Sprache überall und unkompliziert einzusetzen – ein großer Schritt hin zu echter Portabilität.».

Automatischer Handel mit Krypto-Geldbörsen Kaufen Sie Ihre Kryptowährung zum besten Preis

Als Nächstes
Show HN: I made an open source extension to summarize YouTube videos in bullets
Dienstag, 03. Juni 2025. Effizientes Lernen und Arbeiten: Wie die Open-Source-Erweiterung Klip.ly YouTube-Videos zusammenfasst

Klip. ly ist eine innovative Open-Source-Browsererweiterung, die YouTube-Videos mithilfe von KI-Technologie in prägnante Zusammenfassungen verwandelt.

Man Allegedly Bilks E-Trade, Schwab $50K Collecting Free Micro-Deposits (2008)
Dienstag, 03. Juni 2025. Wie ein Betrüger durch Mikro-Einzahlungen $50.000 bei E-Trade und Schwab erschlich – Ein Blick auf den Fall Michael Largent

Der Fall Michael Largent zeigt, wie ein Mann durch eine ausgeklügelte Methode mithilfe sogenannter Mikro-Einzahlungen über 50. 000 Dollar von Online-Brokerage-Firmen erlangte.

Starbucks CEO makes major announcement in turnaround strategy
Dienstag, 03. Juni 2025. Starbucks CEO präsentiert wegweisende Strategie für die Umkehr: Modernisierung und Kundenerlebnis im Fokus

Starbucks setzt mit neuen Maßnahmen zur Kundenbindung und umfangreichen Filialmodernisierungen auf eine nachhaltige Wende. CEO Brian Niccol stellt innovative Konzepte vor, um die Marke zu revitalisieren und den aktuellen Herausforderungen im Einzelhandel zu begegnen.

The definitive Intel Arrow Lake deep-div
Dienstag, 03. Juni 2025. Intel Arrow Lake: Ein umfassender Einblick in Intels nächste Prozessorgeneration

Intel Arrow Lake markiert einen bedeutenden Schritt in der Entwicklung von Desktop- und Laptop-Prozessoren und verspricht bahnbrechende Verbesserungen in Leistung, Effizienz und Architektur. Dieser Beitrag beleuchtet die technischen Details, Innovationen und Auswirkungen von Arrow Lake auf den Markt für Computerhardware.

Surprisingly simple method makes a low-cost, tuneable liquid lens
Dienstag, 03. Juni 2025. Einfache und kostengünstige Methode zur Herstellung verstellbarer Linsen mit Wassertröpfchen

Forscher aus den Philippinen haben eine innovative und erschwingliche Technik entwickelt, um wasserbasierte, verstellbare Linsen herzustellen, die besonders für Bildungseinrichtungen und Labore zugänglich sind. Diese Methode nutzt die natürliche Form von Wassertropfen auf einer hydrophoben Oberfläche, um variable optische Eigenschaften zu erzeugen und bietet eine kostengünstige Alternative zu herkömmlichen Glaslinsen.

Potential influence of geomagnetic activity on blood pressure fluctuations
Dienstag, 03. Juni 2025. Wie geomagnetische Aktivität den Blutdruck beeinflussen könnte: Neue Erkenntnisse aus der Forschung

Eine umfassende Untersuchung der Zusammenhänge zwischen geomagnetischer Aktivität und Blutdruckschwankungen liefert neue Einblicke in mögliche Auswirkungen auf die Gesundheit, insbesondere bei Bluthochdruckpatienten. Dabei werden wissenschaftliche Studien und Umweltfaktoren in den Mittelpunkt gerückt.

AI-driven robot installs nearly 10k solar modules in Australia
Dienstag, 03. Juni 2025. Revolution in der Solarenergie: KI-gesteuerter Roboter installiert fast 10.000 Solarmodule in Australien

Australien setzt einen neuen Meilenstein in der Solarbranche mit einem KI-gesteuerten Roboter, der nahezu 10. 000 Solarmodule installiert.