Cross-Plattform-Entwicklung: Qt 5.15 startet in die Betaphase

Version 5.15 des Qt-Frameworks bereitet auf die nächste Hauptversion vor. Long-Term Support gibt es nur mehr für zahlende Kunden.

In Pocket speichern vorlesen Druckansicht
Cross-Plattform-Entwicklung: Qt 5.15 startet in die Betaphase
Lesezeit: 4 Min.
Inhaltsverzeichnis

Die Qt Company hat das Qt-Framework in Version 5.15 veröffentlicht. Das aktuelle Release des Frameworks zur Cross-Plattform-Entwicklung bringt in technischer Hinsicht zahlreiche kleinere Neuerungen mit. Besonders nennenswert ist die Abspaltung des OpenGL-Renderers. Es markiert gleichzeitig einen Wandel in der Produktpolitik des Unternehmens: Zum ersten Mal wird die geplante Long-Term-Support-Variante (LTS) nur kommerziellen Kunden offenstehen.

Umwälzende technische Neuerungen waren für das aktuelle Release nicht zu erwarten. Der Qt Chief Maintainer und CTO der Qt Company Lars Knoll hatte bereits im Sommer 2019 die Pläne für die nächste Hauptversion bekannt gegeben und dabei bemerkt, dass sich das Team ab dem Feature Freeze für Qt 5.14 verstärkt auf die Entwicklung von Qt 6 konzentriert.

Eine wichtige grundlegende Änderung für die kommende Hauptversion ist die Loslösung von OpenGL als 3D-Grafik-API. Qt 5.14 hatte bereits eine erste Vorschauversion des Scene Graph Renderers in Qt Quick an Bord, der mit einer zusätzlichen Abstraktionsschicht arbeitet, die Qt Rendering Hardware Interface heißt. Entwickler können damit Vulkan, Metal oder Direct3D 11 statt OpenGL als Programmierschnittstelle verwenden. In Qt 5.15 ist der OpenGL Renderer nun nicht mehr fest integriert, sondern als externes Plug-in umgesetzt. Darüber hinaus bringt Qt 3D erweiterte Funktionen für das Profiling und die Fehlersuche mit.

Die Bibliothek mit den Kernfunktionen Qt Core ermöglicht im aktuellen Release unter anderem das Erstellen von QRunnable als Repräsentation von ausführbaren Code-Teilen beziehungsweise Tasks direkt aus std::function, ohne eine spezifische Unterklasse von QRunnable zu erstellen. Außerdem bietet QFile::moveToTrash eine plattformübergreifende API zum Löschen von Dateien unter Zuhilfenahme des jeweils plattformspezifischen Papierkorbs.

Qt QML zum Verwenden der Skriptsprache QML bringt unter anderem das Tool qmlformat mit, das QML-Dateien automatisch passend zu den QML-Coding-Konventionen formatiert. Außerdem führt Qt QML Inline-Komponenten ein: Entwickler können mehrere QML-Komponenten in einer Datei definieren.

Qt Quick führt den PathText-Typ ein, mit dem sich Texte im Zusammenspiel mit Qt Quick Shapes in grafischen Formen darstellen lassen, ohne vorgerenderte Texturen zu benötigen, was vor allem bei hohen Schriftgrößen den Speicherbedarf deutlich reduzieren soll. Außerdem hat das Team die in Qt 5.14 eingeführte Klasse QColorSpace als Abstraktion für Farbrauminformationen erweitert.

Zwei Umstellungen in der Produktpolitik hatte das Unternehmen Ende Januar angekündigt. Eine Änderung betrifft alle Qt-Entwickler, die Qt-Binarys verwenden: Sie benötigen seit Februar zwingend einen Qt-Account für die Installation. Als Begründung nannte die Qt Company in ihrem Blog unter anderem, dass sie sich davon eine stärkere Mitwirkung der Entwickler an Qt verspreche – etwa durch Bug-Reports, Forenbeiträge oder Code-Reviews.

Die Begrenzung des LTS-Support auf kommerzielle Kunden bringt in der Darstellung des Unternehmens freilich nur Vorteile für alle Entwickler mit, da es Open-Source-Nutzer dazu animiere, stets das aktuelle Release zu verwenden. Dass das Unternehmen damit mehr zahlende Kunden gewinnen möchte, darf man jedoch getrost unterstellen. Die Umstellung kommt zu einem Zeitpunkt, der für Nutzer der kostenfreien Variante nicht unbedingt optimal ist, da es das letzte (LTS-)Release vor der nächsten Hauptversion ist, und mit dem Umstieg auf Qt 6 größere Umstellungen verbunden sein dürften, womit eine längere Nutzung von Qt 5.15 LTS attraktiv ist.

Weitere Details zum Release der Beta von Qt 5.15 lassen sich dem Qt-Blog entnehmen. Eine Liste der Neuerungen findet sich im Qt-Wiki. Dort können Interessierte auch einen Blick auf den geplanten Releaseplan werfen, der die Fertigstellung von Qt 5.15 für den 15. Mai vorsieht. Die nächste Beta ist bereits für den 12. März geplant. Wieviele Betavarianten zuvor erscheinen, hängt wie bei Qt üblich davon ab, wann das Team die Umsetzung reif genug für den ersten Release Candidate befindet, der für den 30. April geplant ist. (rme)