C
MCU.Config.binaryAssetOptions
Defines how to include the binary asset data for the image resources.
Description
This QmlProject property controls how binary asset data for the image resources are included into the application binary.
The available options are:
COMPILE
-qulrcc
emits the binary asset data as arrays ofuint64_t
values in the generated C++ file (qulrcc_assets.cpp
). This option may result in longer compile time, and the compiler may run out of memory if the C++ file gets too big.SYMBOLS
- Uses custom linker options to provide the required symbols for each storage section, directly from the generated asset data binary files. This option is supported for the IAR and GreenHills compiler toolchains only. Additionally, some changes to the linker script are needed when using the GreenHills compiler toolchain.INCBIN
-qulrcc
generates an assembly source file (qulrcc_assets_s.S
) and use theincbin
directive to load the asset binary files. This option is supported with GCC compiler toolchain only.
Using the variable with GreenHills
The SYMBOLS
option is be used with the rawimport
linker option to include the asset binary file. Additionally, the linker script must place the asset binary data in the corresponding section, and provide the corresponding symbol.
Here's an example for the default "QulResourceData"
resource storage section:
QulResourceData ALIGN(128) :{qul_resources_QulResourceData.bin(.raw)} >. qul_resources_QulResourceData_instance = addr(QulResourceData);
The linker scripts for the reference platforms that support the Greenhills toolchain, includes the necessary changes.
Usage
This property is accepted in the main application .qmlproject
file, or BoardDefaults.qmlprojectconfig
for the target platform. It takes a string, and the default value is "Automatic"
.
The available options are:
"Automatic"
"incbin"
"symbols"
"winresource"
"compile"
Code example:
MCU.Config { binaryAssetOptions: "symbols" }
Since
This property was introduced in QmlProject API 1.3.
See also ImageFiles.MCU.resourceStorageSection and QUL_BINARY_ASSET_OPTIONS.
Available under certain Qt licenses.
Find out more.