On this page

Tools and utilities

Qt provides a comprehensive set of command-line and graphical development tools covering the full development workflow: configuring builds, preprocessing assets, generating boilerplate from interface descriptions (Protobuf, gRPC, D-Bus, SCXML, OPC UA, Remote Objects), running and analyzing QML code, managing translations, deploying to target platforms, and importing 3D assets.

The tools listed on this page are included in the Qt Framework and installed with Qt. For the broader Qt ecosystem, including Qt Creator, IDE extensions, AI tooling, QA tools, and commercial add-ons, see Qt development tools and Qt QA software tools on qt.io.

Build system

Tools that drive Qt's build configuration and project file generation.

ToolDescription
qmakeQt's traditional build system. Generates platform-specific Makefiles from .pro project files.
qt-cmakeQt's primary build system is CMake. qt-cmake is a CMake wrapper that locates the Qt installation automatically, eliminating the need to set CMAKE_PREFIX_PATH when configuring Qt projects.

Code generators

Tools that generate C++ source from class declarations, or from interface and protocol description files.

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.
Qt D-Bus XML compiler (qdbusxml2cpp)Generates C++ proxy and adaptor classes from a D-Bus introspection XML description.
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 C++ classes from .rep interface files for use with Qt Remote Objects.
Qt OPC UA data type generator (qopcuaxmldatatypes2cpp)Generates C++ data type code from OPC UA NodeSet2 XML files for use with Qt OPC UA.
qtgrpcgenGenerates Qt-compatible gRPC client and server stub C++ classes from .proto files.
Qt Jenny: Java Code GeneratorGenerates C++ wrapper classes for Java APIs, enabling Qt APIs to be called from Java or Kotlin on Android.
User Interface Compiler (uic)Converts .ui form files created in Qt Designer into C++ header files.

Asset conditioning

Tools that preprocess and convert source assets into forms consumed by the build or runtime: UI forms, binary resources, shaders, scalable vector graphics, distance field atlases, and animation files.

ToolDescription
Resource Compiler (rcc)Embeds application resources such as images, QML files, and translation files, into the application binary or as standalone .rcc files.
svgtoqmlConverts SVG files to QML components using Qt Quick Shapes, enabling scalable vector graphics without a raster image dependency.
Qt Shader Baker (qsb)Compiles GLSL shaders into a multi-target package format (.qsb) consumable by Qt's graphics stack across Vulkan, Metal, Direct3D, and OpenGL backends.
Qt Distance Field GeneratorPre-generates distance field texture atlases for text rendering, reducing startup time on resource-constrained embedded targets.
lottietoqmlConverts Lottie JSON animation files (as exported from Adobe After Effects and compatible tools) to QML components using Qt Lottie Animation.

QML compilation

Tools for compiling QML and JavaScript files to bytecode or native C++ ahead of time, reducing startup cost at runtime.

ToolDescription
QML script compilerCompiles functions and expressions in QML and JavaScript files to a byte code that can be interpreted or Just-in-time compiled by the QML engine.
QML type compilerTranslates QML types into C++ types that are ahead-of-time compiled as part of the user code.

Formatters and linters

Tools for analyzing and formatting QML source files.

ToolDescription
qmllintStatic analyzer for QML files. Detects binding errors, deprecated API usage, and other common mistakes at development time.
qmlformatFormats QML files in accordance with the QML Coding Conventions.
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.
qmlcontextpropertydumpScans a C++ source folder for potential context property definitions, and stores them in a format readable by qmllint and QML Language Server.

3D assets

Tools for importing and converting 3D content, and pre-processing physics collision data at build time.

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.
CookerPre-processes and bakes collision meshes for Qt Quick 3D Physics at build time, avoiding runtime cost on target devices.
Material Editor (materialeditor)A GUI tool for authoring CustomMaterials for Qt Quick 3D.
InstancerConverts Qt Quick 3D instancing tables from FileInstancing XML to a binary format for direct memory mapping at runtime.

Translation and localization

Tools for extracting, converting, and compiling translation files.

ToolDescription
Qt LinguistQt's translation environment. Provides translators with a workflow for reviewing source strings, entering translations, and validating .ts files before release.

The following tools are part of Qt Linguist.

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.

Testing and diagnostics

Tools for testing Qt applications, inspecting D-Bus services, and diagnosing runtime issues. For automated GUI and system-level testing, see Squish.

ToolDescription
Qt D-Bus ViewerA graphical browser for D-Bus services. Inspect objects, interfaces, and properties, and call methods interactively.
qmlpreviewHot-reloads QML files on a connected device or host as they are saved, without restarting the application.
androidtestrunnerRuns Qt auto-tests on Android devices or emulators and collects the results.
The qml utilityLoads and runs QML files without a compiled application wrapper. Useful for rapid prototyping and testing individual QML components.

Profiling and tracing

Tools for collecting and analyzing runtime performance data from Qt and QML applications.

ToolDescription
qmlprofilerRetrieves QML tracing data from an application. The collected data can then be visualized in Qt Creator.

Deployment tools

Tools for packaging Qt applications for distribution to target platforms.

ToolDescription
The androiddeployqt ToolAssembles a deployable Android APK or AAB from a compiled Qt application, bundling the required Qt libraries and assets.
The macOS Deployment ToolAutomates the process of creating a deployable application bundle that contains Qt libraries as private frameworks.
The Windows Deployment ToolCollects all required Qt libraries, plugins, QML modules, and runtime dependencies into a ready-to-run deployment folder.

Qt Application Manager

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.

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.
Interface Description Compiler (idc)Post-processes Qt plugin DLLs to register them as COM servers and generate the necessary IDL and type library metadata.
ActiveX Test Container (testcon)An interactive container for testing and exploring ActiveX controls.

UI design

Tools for designing visual effects and application forms.

ToolDescription
Qt Quick Effect MakerA visual node-based tool for designing and previewing custom fragment shader effects for Qt Quick items.
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.
qhelpgeneratorCompiles Qt Help Project (.qhp) files into compressed .qch archives consumable by Qt Assistant and the Qt help framework.

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