Important: Please read the Qt Code of Conduct -

usage of QT_SCALE_FACTOR decreases performance of the application

  • we have developped a QT application, which allows users to create plots.
    On a standard screen, the application works perfectly.
    But on a 4K Screen, the font sizes are very small. So we used QT_SCALE_FACTOR=1.5 and QT_AUTO_SCREEN_SCALE_FACTOR=0. The application looks very nice, text is OK and icons are rendered properly. However whenever we try to plot data, it is much slower. In some cases it takes minutes (case where the 2 signals don't share the same Y axis.) The CPU of the application is 100% during that time and a little bit of debugging shows that drawPolyline in libQtGUI is taking time...
    When instead we use QT_FONT_DPI=160 and QT_AUTO_SCREEN_SCALE_FACTOR=1, text is Ok, performance is OK (back to normal) but icons are very small.

    Env. is Red hat 7.6 or 7.4, we try with QT 5.6 and 5.9.
    Any hints, feedback on this issue would be highly appreciated

  • Lifetime Qt Champion

    @doris75 Did you try with current stable Qt version to see whether this is an issue already fixed in newer versions?

  • hmm i'm struggling with the compilation ...
    [abadiel@4504DS-SRV-0033 qt-everywhere-src-5.13.1]$ ./configure --opensource --verbose

    • cd qtbase
    • /tmp/qt-everywhere-src-5.13.1/qtbase/configure -top-level --opensource --verbose
      Creating qmake...
      -g -I/tmp/qt-everywhere-src-5.13.1/qtbase/qmake -I/tmp/qt-everywhere-src-5.13.1/qtbase/qmake/library -I/tmp/qt-everywhere-src-5.13.1/qtbase/qmake/generators -I/tmp/qt-everywhere-src-5.13.1/qtbase/qmake/generators/unix -I/tmp/qt-everywhere-src-5.13.1/qtbase/qmake/generators/win32 -I/tmp/qt-everywhere-src-5.13.1/qtbase/qmake/generators/mac -I/tmp/qt-everywhere-src-5.13.1/qtbase/include -I/tmp/qt-everywhere-src-5.13.1/qtbase/include/QtCore -I/tmp/qt-everywhere-src-5.13.1/qtbase/include/QtCore/5.13.1 -I/tmp/qt-everywhere-src-5.13.1/qtbase/include/QtCore/5.13.1/QtCore -I../src/corelib/global -I/tmp/qt-everywhere-src-5.13.1/qtbase/mkspecs/linux-g++ -DQT_VERSION_STR="5.13.1" -DQT_VERSION_MAJOR=5 -DQT_VERSION_MINOR=13 -DQT_VERSION_PATCH=1 -DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED -DPROEVALUATOR_FULL -DQT_NO_FOREACH /tmp/qt-everywhere-src-5.13.1/qtbase/qmake/main.cpp
      gmake: *** [main.o] Error 1

    i have no clue what's the problem is
    version of compiler is 5.4.0 Any ideas would help...

  • ok found out the issue (windows makefile) so dos2unix solved the issue
    now i have compilation error
    Must remake target /tmp/qt-everywhere-src-5.13.1/qtdeclarative/lib/libQt5PacketProtocol.a'. gmake[5]: Entering directory/tmp/qt-everywhere-src-5.13.1/qtdeclarative/src/plugins/qmltooling/qmldbg_native'
    gmake[5]: *** No rule to make target /tmp/qt-everywhere-src-5.13.1/qtdeclarative/lib/libQt5PacketProtocol.a', needed by../../../../plugins/qmltooling/'. Stop.
    gmake[5]: Leaving directory /tmp/qt-everywhere-src-5.13.1/qtdeclarative/src/plugins/qmltooling/qmldbg_native' Reaping losing child 0x14b7960 PID 15450 gmake[4]: *** [sub-qmldbg_native-make_first] Error 2 Removing child 0x14b7960 PID 15450 from chain. gmake[4]: Leaving directory/tmp/qt-everywhere-src-5.13.1/qtdeclarative/src/plugins/qmltooling'
    Reaping losing child 0x2045b40 PID 15440
    gmake[3]: *** [sub-qmltooling-make_first] Error 2
    Removing child 0x2045b40 PID 15440 from chain.
    gmake[3]: Leaving directory /tmp/qt-everywhere-src-5.13.1/qtdeclarative/src/plugins' Reaping losing child 0xf2f410 PID 15435 gmake[2]: *** [sub-plugins-make_first-ordered] Error 2 Removing child 0xf2f410 PID 15435 from chain. gmake[2]: Leaving directory/tmp/qt-everywhere-src-5.13.1/qtdeclarative/src'
    Reaping losing child 0x131b530 PID 15366
    gmake[1]: *** [sub-src-make_first] Error 2
    Removing child 0x131b530 PID 15366 from chain.
    gmake[1]: Leaving directory `/tmp/qt-everywhere-src-5.13.1/qtdeclarative'
    Reaping losing child 0x16b3380 PID 15359
    gmake: *** [module-qtdeclarative-make_first] Error 2
    Removing child 0x16b3380 PID 15359 from chain.

Log in to reply