[SOLVED] Qt 5.3 and QtQuick 1.1



  • Hello,

    we are developing a Qt-Widgets application that needs to be run on a server that doesn't support OpenGL, therefore we are forced to use QtQuick 1.1. We'd like to use the new QQuickWidget introduced in Qt 5.3 to show our QML.
    Unfortunately when starting the application it fails to load the module QtQuick 1.1.
    Is QtQuick 1 not supported any longer since Qt 5.3 or is there any other reason the import could fail?
    If that's the case, is there a way to run QtQuick 2 without OpenGL support?

    Btw, we've already tried adding all these modules to the QT variable with no effect:
    @QT += core gui sql
    printsupport quickwidgets quick qml@

    Let me know if you need any more information! Any help is appreciated!



  • Hello and welcome to devnet,

    is there any more console output?
    Also have you tried using QtQuick 2.2 to see if it will load the module properly?

    bq. If that’s the case, is there a way to run QtQuick 2 without OpenGL support?

    Sadly qtquick 2 can not run without opengl(as far as i know), you could run it on unaccelerated hardware trough MESA, but the performace probably would be unsatisfying.



  • No, unfortunately it just says the following: "module "QtQuick" is not installed"
    When using QtQuick 2.2 instead it loads properly and everything works.

    Btw I printed the QML import path list using the following line of code:
    @qDebug() << quickWidget->engine()->importPathList();@
    and it includes "C:/Qt/5.3/mingw482_32/qml" which is the right path to the required modules, right?


  • Moderators

    QtQuick 1 resides in "qtquick1" module. You need to either add "qtquick1" or "declarative" to QT variable in qmake (I don't remember which one, most probably "declarative" will work).

    So:
    @
    QT += core gui widgets declarative
    @

    Should do the trick. With QtQuick1 you do not need QQuickWidget: QDeclarativeView is itself a QWidget, so just use that.

    EDIT
    Also, if the server is Unix/ Linux, you can use Mesa, it's usually available in distribution's package manager. On Windows, you can use the LLVMPipe, which is Mesa compiled with Clang and is in general pretty fast.



  • For QtQuick 1.1 you should use QDeclarativeView which is a QWidget so it already does for QtQuick 1.1 what QQuickWidget now does for QtQuick 2.x.

    You need QT += declarative

    for QtQuick 1.1, and you can remove 'quick qml'



  • Thanks to both of you, adding "declarative" to the QT variable and using a QDeclarativeView really did the trick!
    I was too focused on using a QQuickWidget.

    But I'm still wondering: Does the QQuickWidget not support QtQuick 1 at all?


  • Moderators

    [quote author="MrBolton" date="1400665764"]But I'm still wondering: Does the QQuickWidget not support QtQuick 1 at all?[/quote]

    Correct. It does not need to (plus, QtQuick 1 is deprecated in Qt 5).


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.