- Qt 6.9
- Qt Core
- CMake Commands in Qt6 Core
- qt_generate_moc
- Qt 6.9.3 Reference Documentation

# qt_generate_moc

Calls moc on an input file.

The command is defined in the `Core` component of the `Qt6` package, which can be loaded like so:

     find_package(Qt6 REQUIRED COMPONENTS Core)

This command was introduced in Qt 5.0.

## Synopsis

     qt_generate_moc(src_file dest_file
                     [TARGET target])

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

## Description

Creates a rule to call the Meta-Object Compiler (moc) on `src_file` and store the output in `dest_file`.

Note: This is a low-level macro. See the CMake AUTOMOC Documentation for a more convenient way to let source files be processed with `moc`. qt_wrap_cpp is also similar, but automatically generates a temporary file path for you.

## Arguments

You can set an explicit `TARGET`. This will make sure that the target properties `INCLUDE_DIRECTORIES` and `COMPILE_DEFINITIONS` are also used when scanning the source files with `moc`.

## Examples

     qt_generate_moc(main.cpp main.moc TARGET myapp)