y0o.de · GNU/Linux Nachrichten u.Ä.

🔒
❌ Über y0o.de
Es gibt neue verfügbare Artikel. Klicken Sie, um die Seite zu aktualisieren.
Ältere BeiträgeHaupt-Feeds

Grub 2.06 unterstützt LUKS2-Verschlüsselung

10. Juni 2021 um 10:32

Ursprünglich sollte die neue Version von Grub schon im letzten Jahr erscheinen, dafür bietet der Bootloader trotz des kleinen Versionssprungs mehrere interessante Neuerungen. Unter anderem schützt Grub 2.06 vor den zwei BootHole-Attacken und versteht sich mit LUKS2 verschlüsselten Partitionen.

Neu ist auch der Support für SBAT und die Xen Security Module (XSM/FLASK). Standardmäßig deaktiviert ist “os-prober”, das die installierten Betriebssysteme erkennt und automatisch passende Menüeinträge generiert.

Darüber hinaus haben die Grub-Entwickler zahlreiche von einzelnen Distributoren vorgenommene Änderungen zurückportiert. Abschließend unterstützt Grub 2.06 die Compiler GCC und Clang/LLVM jeweils in der Version 10. Der Quellcode von Grub 2.06 ist auf seiner Website verfügbar.

Der Beitrag Grub 2.06 unterstützt LUKS2-Verschlüsselung erschien zuerst auf Linux-Magazin.

LLVM bekommt Support für Motorola 68000

09. März 2021 um 13:46

Die auch als M68k bekannte CPU-Architektur ist weiter für das Retro-Computing beliebt und bekommt nun Unterstützung von LLVM.  

Der Compiler-Baukasten von LLVM sowie der darin gepflegte C-Compiler Clang erhalten offiziell Unterstützung für die CPU-Architektur und Prozessorfamilie Motorola 6800. Den dazugehörigen Code für den Support haben die Beteiligten in den Hauptentwicklungszweig von LLVM eingepflegt.

Unterstützt und hauptsächlich betreut werden die Arbeiten an dem Port auf die inzwischen rund 40 Jahre alte Prozessorarchitektur von einem kleinen Team von Freiwilligen. Wichtigstes Ziel der Arbeiten dabei ist es, die Retro-Computing-Szene mit den Arbeiten an dem Compiler zu unterstützen.

Immerhin wurden die Motorola 68000 zahlreich in Rechnern wie dem Amiga, Atari ST oder auch dem Apple Macintosh verbaut. Diese sind als Bastelrechner nach wie vor sehr beliebt, was den Port laut der Ankündigung im vergangenen Herbst motiviert hat.

Bisher wurde hauptsächlich die GNU Compiler Collection (GCC) als Compiler-Infrastruktur für die Motorola 68000 genutzt. Deren Betreuer wollten die Unterstützung für die alte CPU-Architektur zuvor bereits entfernen, da die Portierung nicht mehr aktiv gepflegt wurde. Doch auch hier intervenierte die Community und setzte die notwendigen Arbeiten an dem Port um, damit auch aktuelle GCC-Versionen Code für die Motorola 68000 kompilieren. Das wird etwa auch für den Debian-Port genutzt.

Mit einer gemeinsamen Anstrengung ist dies nun nach mehreren gescheiteren Versuchen so ähnlich auch für LLVM noch geglückt. Aufbauend auf dem integrierten Code in LLVM entsteht eine Portierung des Rust-Compilers für M68k. Die Nutzung von Rust in einem Python-Paket führte zuletzt zu Problemen mit einigen anderen alten CPU-Architekturen.

Der Beitrag LLVM bekommt Support für Motorola 68000 erschien zuerst auf Linux-Magazin.

OpenMandriva Lx 4.2 bringt Port zu AArch64

15. Februar 2021 um 10:01

Rund ein Jahr seit der Veröffentlichung der Version 4.1 tritt OpenMandriva Lx 4.2 in Erscheinung. Neu ist unter anderem der nun fertiggestellte Port zur 64-Bit-ARM-Architektur (AArch64).

OpenMandriva rühmt sich, seit dem Jahr 2015 als erste Linux-Distribution zu der Zeit auf die LLVM-Toolchain mit dem Clang-Kompiler zu setzen. An Bord der neuen Ausgabe sind LLVM/Clang 11.0.1. Zudem finden Kernel 5.10.14, KDE Frameworks 5.78, Plasma Desktop 5.20.5, Applications 20.12.2, Qt Framework 5.15.2, Systemd 247, Java 15, Calamares 3.2.35, Binutils 2.36.1 und GCC 10.2. Bei den Anwendungen sind LibreOffice 7.1.0, Krita 4.4.2, Digikam 7.2, SMPlayer 21.1.0, VLC 3.0.12.1 und der Falkon Browser 3.1 im Einsatz.

In den Repositories von OpenMandriva Lx 4.2 finden sich aber auch alternative Desktop-Umgebungen zum Testen, Firefox 85, Chromium 88, Virtualbox 6.1.16, OBS Studio 26.1.2, Gimp 2.10.22 und die Calligra Suite 3.2.1.

Neben dem nun verfügbaren Port auf AArch64 arbeitet das Team auch an einer Portierung zu RISC-V, die aber für diese Version noch nicht in Frage gekommen sei, so die Entwicklerin der Ankündigung. Dort sind auch die Download-Möglichkeiten verlinkt.

Der Beitrag OpenMandriva Lx 4.2 bringt Port zu AArch64 erschien zuerst auf Linux-Magazin.

LLVM 11.0 mit Fortran-Frontend

13. Oktober 2020 um 12:06

Die Compiler-Infrastruktur LLVM ist in Version 11.0 erschienen und unterstützt mit dem Flang-Frontend die in den 50er Jahren hippe Programmiersprache Fortran. Clang verbessert die Fehlerrückmeldungen, bringt neue Warnmeldungen und Compiler-Flags.

Flang ist noch in Arbeit und erstmals bei LLVM 11.0 an Bord. Das LLVM-Frontend unterstützt Fortran 2018, OpenMP 4.5 und OpenAAC 3.0. Flang parst und prüft die Korrektheit für eine Untermenge der Fortran-Sprache. Noch ist das Frontend allerdings nicht in der Lage, Fortran mit LLVM IR in eine Art Zwischensprache zu übersetzen, aus der sich dann funktionierende Binaries erzeugen lassen.

Zu den weiteren erwähnenswerten Veränderungen an LLVM 11.0 gehört der Support für Python 3. Wo es möglich ist, bevorzugt das Buildsystem nun Python 3 über Python 2. Letzteres dient noch als Fallback. Weil aber die Python Software Foundation die Version 2 bereits in Rente geschickt hat, empfehlen auch die LLVM-Macher ihren Nutzern einen baldigen Wechsel auf Python 3.

Neue Warnungen

Auch für die Frontends anderer Sprachen bringt LLVM 11.0 Verbesserungen und Änderungen mit. Clangs AST (Abstract Syntax Tree) repräsentiert nun auch kaputten C++-Code. Das bedeutet, die Fehlermeldungen beim Übersetzen fallen verständlicher und ausführlicher aus. Davon profitieren auch Tools wie “clang-tidy” und “clangd”, die Informationen von AST erhalten.

Eine neue Warngruppe heißt “-Wpointer-to-int-cast” und warnt den Programmierer vor C-artigen Pointer-Umwandlungen in Integer-Typen, die zu klein sind, um alle nötigen Werte zu halten. “-Wuninitialized-const-reference” warnt vor nicht-initialisierten Variablen, die der Entwickler als “const reference”-Argumente einer Funktion übergeben will. Neben Warnungen gibt es auch einige neue Compiler-Flags, darunter “-fstack-clash-protection”, das vor Stack-Clash-Angriffen auf die Architekturen x86, s390x und ppc64 schützt.

Setzt der Entwickler keine “-std=”-Option, verwendet Clang neuerdings nicht mehr “gnu11”, sondern “gnu17”. Außerdem unterstützt das Frontend für C und C++ die GNU-C-Erweiterung “asm inline”. Die tut noch nichts, wird aber geparst. Weitere Details zu den Änderungen an Clang gibt es in den Release Notes. Die allgemeinen Release Notes zu LLVM 11.0 erwähnen zudem die Verbesserungen an den verschiedenen Backends und Targets, darunter RISC-V und Webassembly.

Der Beitrag LLVM 11.0 mit Fortran-Frontend erschien zuerst auf Linux-Magazin.

Schlankes Alpine Linux aktualisiert enthaltene Software

03. Juni 2020 um 10:52

Alpine Linux 3.12.0 unterstützt erstmals die Programmiersprache D und läuft auf Prozessoren mit MIPS64-Architektur (Big Endian). Die übrigen Neuerungen beschränken sich auf aktualisierte Pakete.

Zum Einsatz kommt der Linux-Kernel 5.4.43. Entwickler freuen sich über GCC 9.3.0, LLVM 10.0.0 und Git 2.24.3. Virtuelle Maschinen jongliert QEMU 5.0.0. Für Web-Entwickler stehen Node.js 12.16.3, Nextcloud 18.0.3, PostgreSQL 12.3 und Zabbix 5.0.0 bereit.

Wer Alpine Linux betreibt und auf die neue Version aktualisiert, muss anschließend den OpenSSH-Server neu starten.

Alle Änderungen fasst auch die offizielle Ankündigung zusammen.

Der Beitrag Schlankes Alpine Linux aktualisiert enthaltene Software erschien zuerst auf Linux-Magazin.

LLVM 10.0.0: Clang unterstützt die Concepts von C++20

26. März 2020 um 10:21

Die Compiler-Infrastruktur LLVM und liegt nun in Version 10.0.0 vor. Clang, das Frontend für C, C++ und Objective C, startet neuerdings nicht mehr in einem Sub-Prozess und unterstützt C++ Concepts.

Zum Übersetzen von Code startete Clang bislang einen eigenen Sub-Prozess namens “clang -cc1”. Das neue Standardverhalten besteht darin, das Kompilieren im Prozess selbst zu starten. Wer das alte Verhalten wiederherstellen möchte, erledigt das über die Option “-fno-integrated-cc1”.

Concepts sind ein Teil des neuen C++-Standards C++20, der noch in diesem Jahr verabschiedet werden soll. Die LLVM-Entwickler bezeichnen den neuen Standard als C++2a und unterstützen in Version 10 von Clang die Concepts-Konzepte. Die Concepts ermöglichen es unter anderem, in Templates Funktionen und Klassen zu definieren, ohne dabei an falsch eingesetzten Datentypen zu scheitern. Dazu deklarieren Entwickler bestimmte Anforderungen an Templates, die der Compiler überprüft. Er wirft einen Fehler, falls er eine Bedingung nicht umsetzen kann.

Warnungen und Flaggen

Daneben bringt Clang eine ganze Reihe neuer Warnungen mit oder weitete den Gültigkeitsbereich existierender Warnungen aus. So gibt es die neue Warnung “-Wfinal-dtor-non-final-class”, die darauf hinweist, dass Klassen einen finalen Destructor besitzen, aber nicht als final markiert sind. Am Ende sollen die Warnungen Entwicklern dabei helfen, schon beim Kompilieren mit Clang möglichst viele Fehler im Code aufzuspüren.

Nicht zuletzt bringt Clang 10.0.0 verschiedene neue Compiler-Flags mit und schickt andere in den Ruhestand. Darunter sind auch einige Flags für die RISC-V-Architektur, etwa “-ffixed-xX”, das passende Allzweck-Register reserviert. Weitere Flags wurden entfernt, wieder andere verändert. Für Entwickler lohnt sich also ein Blick in die Release Notes für Clang, aber auch für LLVM als Ganzes.

Der Beitrag LLVM 10.0.0: Clang unterstützt die Concepts von C++20 erschien zuerst auf Linux-Magazin.

Wine 4.20 kommt mit neuer Mono-Version

20. November 2019 um 10:38

Mit Wine lassen sich Windows-Programme unter Linux ausführen. Die jetzt veröffentlichte neue Version 4.20 enthält für .NET-Programme eine neue Fassung der Mono-Engine inklusive eines FNA-Updates.

Darüber hinaus bietet Wine 4.20 Code Persistence in den Skriptsprachen VBScript und JScript. Verbessert haben die Entwickler zudem die Unterstützung für LLVM MinGW. Obendrauf gab es mehrere Fehlerkorrekturen. Wine liegt in den Quellen bereit und es gibt Binaries für diverse Systeme.

Der Beitrag Wine 4.20 kommt mit neuer Mono-Version erschien zuerst auf Linux-Magazin.

Microsoft macht C++-STL-Implementierung von MSVC quelloffen

17. September 2019 um 11:02

Microsoft stellt die eigene Implementierung der C++ Standard Library (STL) für MSVC unter die Apache-2.0-Lizenz mit LLVM-Ausnahmen.

Hinter MSVC verbirgt sich das „Microsoft Visual C++ Compiler and Libraries Toolset“. Ziel der Übung sei es, den MSVC zum Compiler der Wahl für die Windows-Plattform zu machen. MSVC soll C++ besser unterstützen, sinnvollere Fehlermeldungen und Warnung ausgeben, stabiler und performanter laufen und sicherer werden. Dabei habe die Anpassung an den C++-Standard laut Blogpost die oberste Priorität.

Helfen sollen dabei offenbar viele Freiwillige. Das könnte klappen, weil Microsoft den Code für die angepasste Standardbibliothek nun auf Github anbietet. Kunden können also selbst Patches senden und Pull Requests stellen. Das Unternehmen erhofft sich von dem Schritt zudem einen besseren Austausch mit den LLVM-Entwicklern: Microsofts STL und die Libc++ des LLVM-Projekts seien nach wie vor unterschiedliche Bibliotheken, aber womöglich könne man bestimmte Features nun austauschen. Womöglich treibt Microsoft bei der Entscheidung also auch die Angst, aufgrund der wachsenden Popularität des LLVM-Projekts ins Hintertreffen zu geraten.

Auf der anderen Seite veröffentlicht Microsoft nicht den Quellcode der anderen Komponenten und Bibliotheken rund um MSVC. Die STL steche hervor, weil sie – anders als andere MSVC-Bibliotheken – vom C++ Standardization Committee entwickelt werde und sich schnell verändere. Die Umstellung des Buildsystems, der Testinfrastruktur und des Issue Tracking mache es zugleich nötig, die Arbeit an einigen C++20-Features vorübergehend zu verlangsamen.

Der Beitrag Microsoft macht C++-STL-Implementierung von MSVC quelloffen erschien zuerst auf Linux-Magazin.

❌