Skip to content

WIP: Quick compiler

camilo higuita requested to merge camiloh/kirigami:quick_compiler into master

Optionally allow to use Qt Quick Compiler when building Kirigami. This would allow to have a better startup time by pre-compiling Kirigami QML sources listed in the kirigami.qrc, this is better explained as A head of time compilation:

https://doc.qt.io/qt-5/qtquick-deployment.html

Some work depending on feedback :

  • Should BUILD_STATIC and QUICK_COMPILER be compatible and mixable? or autoexclusive? The static build is being deprecated, so i guess this is not an issue anymore?

This will also allow to make launch times faster on low end devices.

Right now i'm doing some launch time tests in the PinePhone with Manjaro: first two columns without using quick compiler, last two columns using kirigami with quick compiler

Legacy Precompiled
w/o cache cache w/o cache cache
koko 8 4 4.5 4
vvave 5 3.5 4.5 3.5
index 6 4 4 4
angelfish 9 7 7 7
discover 7.4 6 5.7 5
elisa 15 6 8.5 6.2
megapixels 10 2.3

To remove the cache and do the tests i used: find $HOME/.cache -name '*.qmlc' -exec rm -- '{}' +

the time measures where not done in the most right way, i just used a clock stopwatch and launched the apps from the phone terminal app.

From what we know qqc2 modules also are precompiled and use qrc, but some dont, like graphicaleffects, that is why some apps using take a few seconds more to launch if the cache has been removed.

Edited by camilo higuita

Merge request reports