On this page

Tools and utilities

Qt provides a comprehensive set of command-line and graphical tools covering the full development workflow: compiling and analyzing C++ and QML code, managing translations and resources, generating boilerplate from protocol and interface descriptions (Protobuf, gRPC, D-Bus, SCXML, OPC UA, Remote Objects), deploying to Android and embedded Linux targets, importing 3D assets, and compiling cross-platform shaders. The tools are grouped below by their primary function.

Build and compilation

The core tools that process Qt's extended C++ and resource formats as part of every build.

ToolDescription
Meta-Object Compiler (moc)Processes C++ class declarations that use Qt macros and generates the introspection code that powers signals and slots, dynamic properties, and runtime type information.
User Interface Compiler (uic)Converts .ui form files created in Qt Designer into C++ header files.
Resource Compiler (rcc)Embeds application resources such as images, QML files, and translation files, into the application binary or as standalone .rcc files.
qmakeQt's traditional build system. Generates platform-specific Makefiles from .pro project files.
Build with CMakeQt's primary build system. Covers Qt's CMake integration modules, find scripts, and Qt-specific CMake APIs.

QML tools

Tools for authoring, analyzing, and running QML code.

ToolDescription
The qml utilityLoads and runs QML files without a compiled application wrapper. Useful for rapid prototyping and testing individual QML components.
qmllintStatic analyser for QML files. Detects binding errors, deprecated API usage, and other common mistakes at development time.
qmlformatAutomatically reformats QML source files to a consistent Qt-standard style.
QML Language ServerAn LSP-compatible language server providing code completion, go-to-definition, and live diagnostics in any editor that supports the Language Server Protocol.
qmlpreviewHot-reloads QML files on a connected device or host as they are saved, without restarting the application.
svgtoqmlConverts SVG files to QML components using Qt Quick Shapes, enabling scalable vector graphics without a raster image dependency.

Translation and localization

Tools for extracting, converting, and compiling translation files. See the Qt Linguist Manual for the full graphical translation environment.

ToolDescription
lupdateExtracts translatable strings from C++ and QML source files and creates or updates .ts translation files.
lupdate-proVariant of lupdate that reads .pro project files to locate source files.
lreleaseCompiles .ts translation files into binary .qm format for use at runtime.
lrelease-proVariant of lrelease that reads .pro project files.
lconvertConverts between translation file formats (TS, XLIFF, PO, and others).
ltext2idConverts text-based translation files to ID-based format.
lcheckValidates .ts files and reports common errors. Suitable for use in CI pipelines.

3D assets and shaders

Tools for importing and converting 3D content, compiling shaders for multiple graphics backends, designing visual effects for Qt Quick, and optimizing text rendering assets for embedded targets.

ToolDescription
Balsam Asset Import ToolImports 3D assets in formats such as FBX, glTF 2, and OBJ and converts them to Qt Quick 3D's native format.
Balsam UIA graphical front end for the Balsam tool.
QSB (Qt Shader Baker)Compiles GLSL shaders into a multi-target package format (.qsb) consumable by Qt's graphics stack across Vulkan, Metal, Direct3D, and OpenGL backends.
CookerPre-processes and bakes collision meshes for Qt Quick 3D Physics at build time, avoiding runtime cost on target devices.
Qt Quick Effect MakerA visual node-based tool for designing and previewing custom fragment shader effects for Qt Quick items.
Qt Distance Field GeneratorPre-generates distance field texture atlases for text rendering, reducing startup time on resource-constrained embedded targets.

D-Bus tools

Tools for working with D-Bus services: browsing the bus interactively and generating C++ bindings from interface descriptions.

ToolDescription
Qt D-Bus ViewerA graphical browser for D-Bus services. Inspect objects, interfaces, and properties, and call methods interactively.
Qt D-Bus XML compiler (qdbusxml2cpp)Generates C++ proxy and adaptor classes from a D-Bus introspection XML description.

Code generators

Tools that generate C++ source from interface or protocol description files.

ToolDescription
Qt SCXML Compiler (qscxmlc)Compiles SCXML state machine descriptions into C++ classes that integrate directly into a Qt application.
Qt Remote Objects Compiler (repc)Generates source and replica classes from .rep interface files for use with Qt Remote Objects.
qtprotobufgenGenerates Qt-compatible C++ message classes from .proto files for use with Qt Protobuf.
qtgrpcgenGenerates Qt-compatible gRPC client and server stub classes from .proto files.
The Qt OPC UA data type generatorGenerates C++ data type code from OPC UA NodeSet2 XML files for use with Qt OPC UA.

Android

Tools for packaging, testing, and integrating Qt applications on Android devices and emulators.

ToolDescription
androiddeployqtAssembles a deployable Android APK or AAB from a compiled Qt application, bundling the required Qt libraries and assets.
androidtestrunnerRuns Qt auto-tests on Android devices or emulators and collects the results.
Qt Jenny: Java Code GeneratorGenerates Java wrapper code from Qt C++ classes, enabling Qt APIs to be called from Java or Kotlin on Android.

ActiveQt, Windows COM integration

Tools for working with COM and ActiveX on Windows: generating C++ bindings from type libraries, producing documentation, and testing ActiveX controls.

ToolDescription
dumpcppGenerates C++ namespace and class definitions from a Windows COM type library, allowing Qt/C++ code to drive COM servers.
dumpdocGenerates HTML documentation for a COM object from its type library.
IDC - Interface Description CompilerPost-processes Qt plugin DLLs to register them as COM servers and generate the necessary IDL and type library metadata.
testcon - ActiveX Test ContainerAn interactive container for testing and exploring ActiveX controls.

Qt Application Manager tools

Qt Application Manager is the framework for building embedded System UIs that manage, sandbox, and control the lifecycle of applications.

ToolDescription
Qt Application ManagerThe main application manager tool. Acts as a compositing window manager and application lifecycle controller for embedded System UIs.

The following command-line utilities are part of the Qt Application Manager suite.

ToolDescription
Controller (appman)Remote-controls a running appman instance: start and stop applications, install packages, and query runtime state.
Packager (appman)Creates, signs, and verifies application packages for installation by the application manager.
Package-Server (appman)A lightweight development HTTP server that distributes application packages for over-the-air installation testing.

Animation

Tools for converting animation assets into Qt Quick components.

ToolDescription
lottietoqmlConverts Lottie JSON animation files (as exported from Adobe After Effects and compatible tools) to QML components using Qt Lottie Animation.

UI design

A visual design tool for Qt Widgets application forms.

ToolDescription
Qt Widgets DesignerA WYSIWYG form and widget designer for Qt Widgets applications, producing .ui files consumed by uic.

Documentation tools

Tools for generating and browsing Qt documentation.

ToolDescription
QDocQt's documentation generator. Reads annotated C++ source and .qdocconf configuration files to produce HTML or Qt Help output.
Qt AssistantQt's offline documentation browser. Embeds in applications to provide context-sensitive help.

© 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.