Homebrew zeigt die Schwierigkeiten
Das Homebrew-Team selbst pflegt dazu auf Github eine Liste des Programm-Supports. Hier zeigt sich, dass gerade kleinere C-Programme bereits gut unterstützt werden. Dazu gehören neben dem bereits erwähnten Curl beispielsweise auch die Build-Werkzeuge der Autotools und CMake oder zahlreiche Bibliotheken wie Libgcrypt und Libssh. Das Homebrew-Projekt zählt darüber hinaus viele wichtige Projekte auf, die es selbst als Blocker beschreibt, da diese wohl erst nach viel Arbeit nativ auf dem M1 unterstützt werden können.
Dazu gehören alle Projekte, die auf einen Compiler aus dem GCC-Projekt angewiesen sind. Darauf hat bereits die R-Community hingewiesen, die auf den Fortran-Compiler setzt. Hier ist wohl frühestens im kommenden Sommer mit einer stabilen Unterstützung zu rechnen.
Das wirkt sich auf viele weitere Projekte aus, wie etwa Numpy oder Julia. Zwar hat Apple selbst hier in einigen Fällen versprochen, den Projekten aktiv bei ihren Portierungen zu helfen. Die Julia-Community behilft sich derzeit aber auch mit einigen Hacks, um zumindest vorübergehend den Port schneller abschließen zu können.
Support teilweise noch sehr unterschiedlich
Manche Programmiersprachen haben tendenziell noch Probleme mit der nativen Unterstützung: Am besten aufgestellt ist hier wohl noch Rust, das bereits als Beta-Version auf den ARM-Macs eingesetzt werden kann und bald stabil erscheinen dürfte. So konnten wir mit der aktuellen Rust-Beta das Programm Ripgrep kompilieren und ausführen.
Etwas schwieriger ist die Situation bei Go: Das ist zwar mit Vorabversionen lauffähig, stabile Versionen wird es vermutlich aber erst mit Go 1.16 im kommenden Februar geben. Für OpenJDK und Java stehen ebenso zwar bereits ARM-Builds für MacOS bereit, offiziell abgeschlossen ist der Port (JEP 391) jedoch noch nicht.
Diese unterschiedliche native Unterstützung der Programmiersprachen selbst wirkt sich damit natürlich auch auf damit geschriebene Anwendungen aus, die eben oft noch nicht nativ für die neuen Macs bereitstehen und auch nicht schnell selbst kompiliert werden können. Und selbst wenn, ist dies meist erst seit wenigen Tagen oder Wochen möglich, wie etwa bei dem Electron-Framework. Darauf aufbauende Anwendungen benötigen wiederum noch Zeit für ihre eigenen Anpassungen und Tests.
Darüber hinaus gibt es aber eine Vielzahl an Werkzeugen, die durch Rosetta 2 zum Entwickeln genutzt werden können. Dazu gehört Microsofts Visual Studio Code, das bei uns flüssig läuft. Das gilt auch für weitere Software wie die Sprachen Go und R oder das OpenJDK. Hier sind jedoch noch teils deutliche Leistungseinbußen und der eine oder andere Fehler zu vermelden, abhängig vom tatsächlichen Programm. Eine Übersicht, welche Programme mit Rosetta 2 oder aber auch gar nicht laufen, bietet die Webseite Is Apple Silicon ready.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Entwickeln auf Apples M1 mit Hindernissen | Noch keine gute Virtualisierung |
Das liest sich bei dir vorher anders: Da lässt zumindest die Interpretation zu, dass es...
Am Anfang wurde erwähnt, dass Blizzard das schon angepasst hätte. Mich würde...
Lüfterlose Cumputer und Laptops gab es schon immer. Lüfterlose Notebooks sind halt...
genau, du sagst es doch letztendlich auch, für einen ersten Wurf verdammt gut - aber...