Tools und Hilfsprogramme
Qt bietet eine umfassende Sammlung von Befehlszeilen- und grafischen Entwicklungstools, die den gesamten Entwicklungsworkflow abdecken: Konfigurieren von Builds, Vorverarbeiten von Assets, Generieren von Boilerplate-Code aus Schnittstellenbeschreibungen (Protobuf, gRPC, Qt D-Bus, Qt SCXML, OPC UA, Remote Objects), Ausführen und Analysieren von QML-Code, Verwalten von Übersetzungen, Bereitstellen auf Zielplattformen sowie Importieren von 3D-Assets.
Die auf dieser Seite aufgeführten Werkzeuge sind im Qt-Framework enthalten und werden zusammen mit Qt installiert. Informationen zum umfassenderen Qt-Ökosystem, einschließlich Qt Creator, IDE-Erweiterungen, KI-Tools, QA-Tools und kommerzielle Add-ons, finden Sie unter „Qt-Entwicklungstools“ und „Qt-QA-Softwaretools“ auf qt.io.
Anleitungen zum sicheren Ausführen dieser Tools in Projekten, deren Herkunft Sie nicht vertrauen, finden Sie unter „Sichere Nutzung der Qt-Entwicklertools“.
Build-System
Tools, die die Build-Konfiguration von Qt und die Generierung von Projektdateien steuern.
| Tool | Beschreibung |
|---|---|
| qmake | Das traditionelle Build-System von Qt. Erzeugt plattformspezifische Makefiles aus „ .pro “-Projektdateien. |
| qt-cmake | Das primäre Build-System von Qt ist CMake. qt-cmake ist ein CMake-Wrapper, der die Qt-Installation automatisch ermittelt, sodass bei der Konfiguration von Qt-Projekten keine Einstellung von ` CMAKE_PREFIX_PATH ` erforderlich ist. |
Code-Generatoren
Werkzeuge, die C++-Quellcode aus Klassendeklarationen oder aus Schnittstellen- und Protokollbeschreibungsdateien generieren.
| Tool | Beschreibung |
|---|---|
| Meta-Object Compiler (moc) | Verarbeitet C++-Klassendeklarationen, die Qt-Makros verwenden, und generiert den Introspektionscode, der Signale und Slots, dynamische Eigenschaften sowie Laufzeit-Typinformationen ermöglicht. |
| Qt D-Bus XML-Compiler (qdbusxml2cpp) | Erzeugt C++-Proxy- und Adapterklassen aus einer D-Bus-Introspektions-XML-Beschreibung. |
| Qt SCXML Compiler (qscxmlc) | Kompiliert SCXML-Zustandsmaschinenbeschreibungen zu C++-Klassen, die sich direkt in eine Qt-Anwendung integrieren lassen. |
| Qt Remote Objects Compiler (repc) | Erzeugt C++-Quell- und Replika-Klassen aus „ .rep “-Schnittstellendateien zur Verwendung mit Qt Remote Objects. |
| Qt OPC UA Datentyp-Generator (qopcuaxmldatatypes2cpp) | Erzeugt C++-Code für Datentypen aus OPC-UA-NodeSet2-XML-Dateien zur Verwendung mit Qt OPC UA. |
| qtgrpcgen | Erzeugt Qt GRPC-Client- und Server-Stub-C++-Klassen aus „ .proto “-Dateien. |
| Qt Jenny: Java-Code-Generator | Erzeugt C++-Wrapper-Klassen für Java-APIs, wodurch Qt-APIs von Java oder Kotlin auf Android aus aufgerufen werden können. |
| User Interface Compiler (uic) | Konvertiert in „ Qt Designer “ erstellte „ .ui “-Formdateien in C++-Header-Dateien. |
Asset-Aufbereitung
Tools, die Quell-Assets vorverarbeiten und in Formate konvertieren, die vom Build oder zur Laufzeit verwendet werden: UI-Formate, binäre Ressourcen, Shader, skalierbare Vektorgrafiken, Distanzfeld-Atlanten und Animationsdateien.
| Tool | Beschreibung |
|---|---|
| Resource Compiler (rcc) | Bindet Anwendungsressourcen wie Bilder, QML-Dateien und Übersetzungsdateien in die Anwendungsbinärdatei oder als eigenständige „ .rcc “-Dateien ein. |
| svgtoqml | Konvertiert SVG-Dateien mithilfe von „ Qt Quick Shapes“ in QML-Komponenten und ermöglicht so skalierbare Vektorgrafiken ohne Abhängigkeit von Rasterbildern. |
| Qt Shader Baker (qsb) | Kompiliert GLSL-Shader in ein Multi-Target-Paketformat (.qsb), das vom Qt-Grafikstack über Vulkan-, Metal-, Direct3D- und OpenGL-Backends hinweg genutzt werden kann. |
| Qt Distance Field Generator | Erzeugt im Voraus Distanzfeld-Texturatlasse für die Textdarstellung und verkürzt so die Startzeit auf ressourcenbeschränkten Embedded-Zielen. |
| lottietoqml | Konvertiert Lottie-JSON-Animationsdateien (wie sie aus Adobe After Effects und kompatiblen Tools exportiert werden) mithilfe von Qt Lottie Animation. |
QML-Kompilierung
Tools zum vorzeitigen Kompilieren von QML- und JavaScript-Dateien in Bytecode oder natives C++, wodurch der Startaufwand zur Laufzeit reduziert wird.
| Tool | Beschreibung |
|---|---|
| QML-Skript-Compiler | Kompiliert Funktionen und Ausdrücke in QML- und JavaScript-Dateien in einen Bytecode, der von der QML-Engine interpretiert oder Just-in-Time kompiliert werden kann. |
| QML-Typ-Compiler | Übersetzt QML-Typen in C++-Typen, die als Teil des Benutzercodes vorab kompiliert werden. |
Formatierer und Linter
Werkzeuge zur Analyse und Formatierung von QML-Quelldateien.
| Tool | Beschreibung |
|---|---|
| qmllint | Statischer Analysator für QML-Dateien. Erkennt Bindungsfehler, die Verwendung veralteter APIs und andere häufige Fehler bereits während der Entwicklung. |
| qmlformat | Formatiert QML-Dateien gemäß den QML-Codierungskonventionen. |
| QML Language Server | Ein LSP-kompatibler Sprachserver, der Code-Vervollständigung, „Go-to-Definition“ und Live-Diagnosen in jedem Editor bereitstellt, der das Language Server Protocol unterstützt. |
| qmlcontextpropertydump | Durchsucht einen C++-Quellordner nach potenziellen Kontext-Eigenschaftsdefinitionen und speichert diese in einem für qmllint lesbaren Format sowie QML Language Server. |
3D-Assets
Tools zum Importieren und Konvertieren von 3D-Inhalten sowie zur Vorverarbeitung von Physik-Kollisionsdaten während der Kompilierung.
| Tool | Beschreibung |
|---|---|
| Balsam Asset Import Tool | Importiert 3D-Assets in Formaten wie FBX, glTF 2 und OBJ und konvertiert sie in das native Format von „ Qt Quick 3D “. |
| Balsam UI | Eine grafische Benutzeroberfläche für das Balsam-Tool. |
| Cooker | Bereitet Kollisionsnetze für „Qt Quick 3D Physics“ bereits während der Erstellungsphase vor und bakt sie ein, wodurch Laufzeitaufwand auf den Zielgeräten vermieden wird. |
| Material-Editor (materialeditor) | Ein GUI-Tool zur Erstellung von „ CustomMaterials “ für Qt Quick 3D. |
| Instancer | Konvertiert Qt Quick 3D Instanzierungstabellen aus „ FileInstancing “-XML in ein binäres Format für das direkte Speicher-Mapping zur Laufzeit. |
Übersetzung und Lokalisierung
Werkzeuge zum Extrahieren, Konvertieren und Kompilieren von Übersetzungsdateien.
| Tool | Beschreibung |
|---|---|
| Qt Linguist | Die Übersetzungsumgebung von Qt. Bietet Übersetzern einen Arbeitsablauf zum Überprüfen von Quelltexten, Eingeben von Übersetzungen und Validieren von „ .ts “-Dateien vor der Veröffentlichung. |
Die folgenden Werkzeuge sind Teil von „ Qt Linguist “.
| Tool | Beschreibung |
|---|---|
| lupdate | Extrahiert übersetzbare Zeichenfolgen aus C++- und QML-Quelldateien und erstellt oder aktualisiert „ .ts “-Übersetzungsdateien. |
| lupdate-pro | Variante von „ lupdate “, die „ .pro “-Projektdateien ausliest, um Quelldateien zu finden. |
| lrelease | Kompiliert „ .ts “-Übersetzungsdateien in das binäre „ .qm “-Format zur Verwendung zur Laufzeit. |
| lrelease-pro | Variante von „ lrelease “, die „ .pro “-Projektdateien liest. |
| lconvert | Konvertiert zwischen verschiedenen Übersetzungsdateiformaten (TS, XLIFF, PO und anderen). |
| ltext2id | Konvertiert textbasierte Übersetzungsdateien in ein ID-basiertes Format. |
| lcheck | Überprüft „ .ts “-Dateien und meldet häufige Fehler. Geeignet für den Einsatz in CI-Pipelines. |
Testen und Diagnose
Tools zum Testen von Qt-Anwendungen, zum Überprüfen von D-Bus-Diensten und zur Diagnose von Laufzeitproblemen. Für automatisierte Tests auf GUI- und Systemebene siehe Squish.
| Tool | Beschreibung |
|---|---|
| Qt D-Bus Viewer | Ein grafischer Browser für D-Bus-Dienste. Überprüfen Sie Objekte, Schnittstellen und Eigenschaften und rufen Sie Methoden interaktiv auf. |
| qmlpreview | Lädt QML-Dateien auf einem verbundenen Gerät oder Host sofort nach dem Speichern neu, ohne die Anwendung neu zu starten. |
| androidtestrunner | Führt Qt-Tests auf Android-Geräten oder -Emulatoren aus und sammelt die Ergebnisse. |
| Das Dienstprogramm „qml“ | Lädt und führt QML-Dateien ohne einen kompilierten Anwendungs-Wrapper aus. Nützlich für das schnelle Prototyping und das Testen einzelner QML-Komponenten. |
Profiling und Tracing
Werkzeuge zum Erfassen und Analysieren von Laufzeit-Leistungsdaten aus Qt- und Qml-Anwendungen.
| Tool | Beschreibung |
|---|---|
| qmlprofiler | Ruft QML-Tracing-Daten aus einer Anwendung ab. Die erfassten Daten können anschließend in „ Qt Creator “ visualisiert werden. |
Bereitstellungstools
Tools zum Packen von Qt-Anwendungen für die Verteilung auf Zielplattformen.
| Tool | Beschreibung |
|---|---|
| Das Tool „androiddeployqt“ | Erstellt aus einer kompilierten Qt-Anwendung eine bereitstellbare Android-APK- oder AAB-Datei und bündelt dabei die erforderlichen Qt-Bibliotheken und Ressourcen. |
| Das Tool „harmonydeployqt“ | Erstellt aus einer kompilierten Qt-Anwendung ein bereitstellungsfähiges HarmonyOS Ability Package (HAP) und bündelt dabei die erforderlichen Qt-Bibliotheken, Plugins und QML-Module. |
| Das macOS-Bereitstellungstool | Automatisiert den Prozess der Erstellung eines bereitstellbaren Anwendungsbundles, das Qt-Bibliotheken als private Frameworks enthält. |
| Das Windows-Bereitstellungstool | Es sammelt alle erforderlichen Qt-Bibliotheken, Plugins, QML-Module und Laufzeitabhängigkeiten in einem einsatzbereiten Bereitstellungsordner. |
Qt Application Manager
Qt Application Manager ist das Framework zum Erstellen eingebetteter System-UIs, die den Lebenszyklus von Anwendungen verwalten, in einer Sandbox ausführen und steuern.
| Tool | Beschreibung |
|---|---|
| Qt Application Manager | Das zentrale Anwendungsmanagement-Tool. Es fungiert als Compositing-Fenstermanager und als Steuerelement für den Anwendungslebenszyklus bei eingebetteten System-UIs. |
Die folgenden Befehlszeilenprogramme sind Teil der „ Qt Application Manager “-Suite.
| Tool | Beschreibung |
|---|---|
| Controller (appman) | Steuert eine laufende appman-Instanz aus der Ferne: Starten und Beenden von Anwendungen, Installieren von Paketen und Abfragen des Laufzeitzustands. |
| Packager (appman) | Erstellt, signiert und überprüft Anwendungspakete zur Installation durch den Anwendungsmanager. |
| Paketserver (appman) | Ein schlanker HTTP-Entwicklungsserver, der Anwendungspakete für Tests der drahtlosen Installation bereitstellt. |
ActiveQt, Windows-COM-Integration
Werkzeuge für die Arbeit mit COM und ActiveX unter Windows: Generierung von C++-Bindings aus Typbibliotheken, Erstellung von Dokumentation und Testen von ActiveX-Steuerelementen.
| Tool | Beschreibung |
|---|---|
| dumpcpp | Erzeugt C++-Namespace- und Klassendefinitionen aus einer Windows-COM-Typbibliothek, sodass Qt/C++-Code COM-Server ansteuern kann. |
| dumpdoc | Erstellt HTML-Dokumentation für ein COM-Objekt anhand seiner Typbibliothek. |
| Interface Description Compiler (idc) | Verarbeitet Qt-Plugin-DLLs nachträglich, um sie als COM-Server zu registrieren und die erforderlichen IDL- sowie Typbibliotheks-Metadaten zu generieren. |
| ActiveX-Testcontainer (testcon) | Ein interaktiver Container zum Testen und Erkunden von ActiveX-Steuerelementen. |
UI-Design
Werkzeuge zum Entwerfen visueller Effekte und Anwendungsformulare.
| Tool | Beschreibung |
|---|---|
| Qt Quick Effect Maker | Ein visuelles, knotenbasiertes Werkzeug zum Entwerfen und Anzeigen einer Vorschau benutzerdefinierter Fragment-Shader-Effekte für Elemente des „ Qt Quick “. |
| Qt Widgets Designer | Ein WYSIWYG-Formular- und Widget-Designer für „ Qt Widgets “-Anwendungen, der „ .ui “-Dateien erzeugt, die von „ uic “ verarbeitet werden. |
Dokumentationswerkzeuge
Werkzeuge zum Erstellen und Durchsuchen von Qt-Dokumentation.
| Tool | Beschreibung |
|---|---|
| QDoc | Der Dokumentationsgenerator von Qt. Liest mit Anmerkungen versehene C++-Quelldateien und „ .qdocconf “-Konfigurationsdateien ein, um HTML- oder „ Qt Help “-Ausgaben zu erzeugen. |
| Qt Assistant | Der Offline-Dokumentationsbrowser von Qt. Lässt sich in Anwendungen einbinden, um kontextsensitive Hilfe bereitzustellen. |
| qhelpgenerator | Kompiliert „ Qt Help “-Projektdateien (.qhp) zu komprimierten „ .qch “-Archiven, die von „ Qt Assistant “ und dem Qt Help-Framework verarbeitet werden können. |
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.