Generates C++ sources implementing an interface for a D-Bus interface description file.

The command is defined in the DBus component of the Qt6 package. Load the package with:

find_package(Qt6 REQUIRED COMPONENTS DBus)

This command was introduced in Qt 6.0.


qt_add_dbus_interface(<VAR> dbus_spec basename)

If versionless commands are disabled, use qt6_add_dbus_interface() instead. It supports the same set of arguments as this command.


Generates C++ sources implementing an interface for a D-Bus interface description file defined in dbus_spec. The generated files are named after basename: basename.h, basename.cpp, basename.moc. The paths of the files are added to <VAR>.

The function sets up a call to the Qt D-Bus XML compiler (qdbusxml2cpp) in interface (proxy) mode. By default, qdbusxml2cpp generates a C++ class named after the interface name, with a namespaced alias:

D-Bus Interface NameClass nameNamespaced name


Options can be set using set_source_files_properties on the dbus_spec:

CLASSNAMEclass_nameOverride the default interface class name with class_name.
NO_NAMESPACEbooleanDo not generate the namespaced name if set to ON.
INCLUDEpathAdd an #include "path" in the generated code.

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