Details
-
Task
-
Resolution: Unresolved
-
P2: Important
-
None
-
None
-
None
-
13
-
Foundation Sprint 126, Foundation Sprint 127, Foundation Sprint 128, Foundation Sprint 129, Foundation Sprint 130
Description
While the main focus of the Quick-app optimized configuration is on the
enabled/disabled features, other build-related options need to be considered
as well because they have the potential to dramatically reduce the application binary
size.
Importantly this task should not dive deep into finer optimization flags
with small..moderate gains, but rather identify a small number of options
that have the largest impact. One problem with the finer-tuning options
are disclaimers like this: "should be used with caution and only when necessary,
as it can have implications on the compatibility and performance of your compiled
code". This puts the onus of discovering all the implications on the Qt user.
This is fine for use cases striving for aggressive optimization, but not
fine for the broader, easy to use, configurations.
It is imperative to test these options on the platforms, because it is
a guarantee that they will not work as expected everywhere. This means that
each platform has potentially a bit differing configuration. As an example,
Qt for Android does not support static builds. Another example is WASM,
where Emscripten compiler bug prevents the usage of LTO (Link Time Optimization).