Compiles big binary resources into object code.

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


qt_add_big_resources(<VAR> file1.qrc [file2.qrc ...]
                     [OPTIONS ...])

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


Creates compiled object files from Qt resource files using the Resource Compiler (rcc). Paths to the generated files are added to <VAR>.

This is similar to qt_add_resources, but directly generates object files (.o, .obj) files instead of C++ source code. This allows to embed bigger resources, where compiling to C++ sources and then to binaries would be too time consuming or memory intensive.

Note: The file1.qrc will not be treated as a source file by Qt Creator. It needs to be added as a source file to a CMake target and have the property SKIP_AUTORCC set to ON.

Warning: This command is not supported when building for iOS, use qt_add_resources instead. See QTBUG-103497 for details.


You can set additional OPTIONS that should be added to the rcc calls. You can find possible options in the rcc documentation.


set(SOURCES main.cpp)
qt_add_big_resources(SOURCES big_resource.qrc)

# Have big_resource.qrc treated as a source file by Qt Creator
list(APPEND SOURCES big_resource.qrc)
set_property(SOURCE big_resource.qrc PROPERTY SKIP_AUTORCC ON)

qt_add_executable(myapp ${SOURCES})

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