Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. EGLFS: OpenGL windows cannot be mixed with others.
Forum Updated to NodeBB v4.3 + New Features

EGLFS: OpenGL windows cannot be mixed with others.

Scheduled Pinned Locked Moved Unsolved Mobile and Embedded
7 Posts 2 Posters 774 Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • SpyerGameS Offline
    SpyerGameS Offline
    SpyerGame
    wrote on last edited by
    #1

    I have lattepanda v1 and I installed ubuntu 22.04 server!
    and I run this command for my qml app
    ./myApp --platform eglfs
    output:
    EGLFS: OpenGL windows cannot be mixed with others.

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi,

      Are you doing some raw OpenGL calls in your application ?

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      SpyerGameS 1 Reply Last reply
      0
      • SGaistS SGaist

        Hi,

        Are you doing some raw OpenGL calls in your application ?

        SpyerGameS Offline
        SpyerGameS Offline
        SpyerGame
        wrote on last edited by SpyerGame
        #3

        Thx @SGaist no I have simple qt quick project in qt5.15.2 without any third party
        I run this command in lattepand v1 in ubuntu server 22.04
        sudo ./myapp -platform eglfs
        but not show anything in hdmi display (ASUS)
        and in terminal shows my qInfo() message of myapp
        And with this:
        sudo ./myapp -platform linuxfb
        runs ok but my animation and graphical effect did not show

        SGaistS 1 Reply Last reply
        0
        • SpyerGameS SpyerGame

          Thx @SGaist no I have simple qt quick project in qt5.15.2 without any third party
          I run this command in lattepand v1 in ubuntu server 22.04
          sudo ./myapp -platform eglfs
          but not show anything in hdmi display (ASUS)
          and in terminal shows my qInfo() message of myapp
          And with this:
          sudo ./myapp -platform linuxfb
          runs ok but my animation and graphical effect did not show

          SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on last edited by
          #4

          @SpyerGame do you have anything else running beside your application ? What does the kernel logs tell you ?

          Interested in AI ? www.idiap.ch
          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

          SpyerGameS 1 Reply Last reply
          0
          • SGaistS SGaist

            @SpyerGame do you have anything else running beside your application ? What does the kernel logs tell you ?

            SpyerGameS Offline
            SpyerGameS Offline
            SpyerGame
            wrote on last edited by SpyerGame
            #5

            @SGaist

            @SGaist said in EGLFS: OpenGL windows cannot be mixed with others.:

            @SpyerGame do you have anything else running beside your application ?

            No I dont, when I comment QSplash screen on main.cpp:
            EGLFS: OpenGL windows cannot be mixed with others.
            did not show me again
            this means not any error but not working

            @SGaist said in EGLFS: OpenGL windows cannot be mixed with others.:

            @SpyerGame What does the kernel logs tell you ?

            Screenshot 2023-09-26 033954.png

            But without of sudo

            pec@pec:~/myApp/q1$ ./untitled  -platform eglfs
            QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms" ...
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqeglfs.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqeglfs.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "eglfs"
                    ]
                },
                "archreq": 0,
                "className": "QEglFSIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("eglfs")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqlinuxfb.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqlinuxfb.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "linuxfb"
                    ]
                },
                "archreq": 0,
                "className": "QLinuxFbIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("linuxfb")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqminimal.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqminimal.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "minimal"
                    ]
                },
                "archreq": 0,
                "className": "QMinimalIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("minimal")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqminimalegl.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqminimalegl.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "minimalegl"
                    ]
                },
                "archreq": 0,
                "className": "QMinimalEglIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("minimalegl")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqoffscreen.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqoffscreen.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "offscreen"
                    ]
                },
                "archreq": 0,
                "className": "QOffscreenIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("offscreen")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqvnc.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqvnc.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "vnc"
                    ]
                },
                "archreq": 0,
                "className": "QVncIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("vnc")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqwayland-egl.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqwayland-egl.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "wayland-egl"
                    ]
                },
                "archreq": 0,
                "className": "QWaylandEglPlatformIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("wayland-egl")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqwayland-generic.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqwayland-generic.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "wayland"
                    ]
                },
                "archreq": 0,
                "className": "QWaylandIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("wayland")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqwayland-xcomposite-egl.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqwayland-xcomposite-egl.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "wayland-xcomposite-egl"
                    ]
                },
                "archreq": 0,
                "className": "QWaylandXCompositeEglPlatformIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("wayland-xcomposite-egl")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqwayland-xcomposite-glx.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqwayland-xcomposite-glx.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "wayland-xcomposite-glx"
                    ]
                },
                "archreq": 0,
                "className": "QWaylandXCompositeGlxPlatformIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("wayland-xcomposite-glx")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqxcb.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqxcb.so, metadata=
            {
                "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                "MetaData": {
                    "Keys": [
                        "xcb"
                    ]
                },
                "archreq": 0,
                "className": "QXcbIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("xcb")
            QFactoryLoader::QFactoryLoader() checking directory path "/home/pec/myApp/q1/platforms" ...
            loaded library "/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqeglfs.so"
            QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/x86_64-linux-gnu/qt5/plugins/egldeviceintegrations" ...
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/egldeviceintegrations/libqeglfs-emu-integration.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/egldeviceintegrations/libqeglfs-emu-integration.so, metadata=
            {
                "IID": "org.qt-project.qt.qpa.egl.QEglFSDeviceIntegrationFactoryInterface.5.5",
                "MetaData": {
                    "Keys": [
                        "eglfs_emu"
                    ]
                },
                "archreq": 0,
                "className": "QEglFSEmulatorIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("eglfs_emu")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/egldeviceintegrations/libqeglfs-kms-egldevice-integration.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/egldeviceintegrations/libqeglfs-kms-egldevice-integration.so, metadata=
            {
                "IID": "org.qt-project.qt.qpa.egl.QEglFSDeviceIntegrationFactoryInterface.5.5",
                "MetaData": {
                    "Keys": [
                        "eglfs_kms_egldevice"
                    ]
                },
                "archreq": 0,
                "className": "QEglFSKmsEglDeviceIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("eglfs_kms_egldevice")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/egldeviceintegrations/libqeglfs-kms-integration.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/egldeviceintegrations/libqeglfs-kms-integration.so, metadata=
            {
                "IID": "org.qt-project.qt.qpa.egl.QEglFSDeviceIntegrationFactoryInterface.5.5",
                "MetaData": {
                    "Keys": [
                        "eglfs_kms"
                    ]
                },
                "archreq": 0,
                "className": "QEglFSKmsGbmIntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("eglfs_kms")
            QFactoryLoader::QFactoryLoader() looking at "/usr/lib/x86_64-linux-gnu/qt5/plugins/egldeviceintegrations/libqeglfs-x11-integration.so"
            Found metadata in lib /usr/lib/x86_64-linux-gnu/qt5/plugins/egldeviceintegrations/libqeglfs-x11-integration.so, metadata=
            {
                "IID": "org.qt-project.qt.qpa.egl.QEglFSDeviceIntegrationFactoryInterface.5.5",
                "MetaData": {
                    "Keys": [
                        "eglfs_x11"
                    ]
                },
                "archreq": 0,
                "className": "QEglFSX11IntegrationPlugin",
                "debug": false,
                "version": 331520
            }
            
            
            Got keys from plugin meta data ("eglfs_x11")
            QFactoryLoader::QFactoryLoader() checking directory path "/home/pec/myApp/q1/egldeviceintegrations" ...
            loaded library "/usr/lib/x86_64-linux-gnu/qt5/plugins/egldeviceintegrations/libqeglfs-kms-integration.so"
            Could not open DRM device /dev/dri/card0 (Permission denied)
            Could not open DRM device
            Aborted (core dumped)
            pec@pec:~/myApp/q1$
            
            
            1 Reply Last reply
            0
            • SGaistS Offline
              SGaistS Offline
              SGaist
              Lifetime Qt Champion
              wrote on last edited by
              #6

              So it's not a "simple QML application".

              When using backends such as eglfs, you have to take into account that there's no window manager so your application has to be a single window from which you do everything. Here you already have multiple separate things since you have a QSplashScreen and then something, maybe many things, else. So if you want to test drive your board, start with the most simple dummy app to ensure that you have the minimum loaded.

              Interested in AI ? www.idiap.ch
              Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

              SpyerGameS 1 Reply Last reply
              1
              • SGaistS SGaist

                So it's not a "simple QML application".

                When using backends such as eglfs, you have to take into account that there's no window manager so your application has to be a single window from which you do everything. Here you already have multiple separate things since you have a QSplashScreen and then something, maybe many things, else. So if you want to test drive your board, start with the most simple dummy app to ensure that you have the minimum loaded.

                SpyerGameS Offline
                SpyerGameS Offline
                SpyerGame
                wrote on last edited by SpyerGame
                #7

                @SGaist
                This is my qt quick project: (that is not working with eglfs )
                While I removed QSplash, but it does not display anything yet!

                // main.qml

                import QtQuick 2.15
                import QtQuick.Window 2.15
                
                Window {
                    width: 1920
                    height: 1080
                    visible: true
                    title: qsTr("Hello World")
                
                
                
                    Timer {
                        running: true
                        repeat: true
                        interval: 1000
                        onTriggered: rec.rotation += 10
                    }
                
                    Rectangle {
                        anchors.centerIn: parent
                        width: 300; height: 330
                        color: 'salmon'
                        id: rec
                    }
                }
                

                // main.cpp

                int main(int argc, char *argv[])
                {
                    QGuiApplication app(argc, argv);
                
                    QQmlApplicationEngine engine;
                    const QUrl url(QStringLiteral("qrc:/main.qml"));
                    QObject::connect(&engine, &QQmlApplicationEngine::objectCreated,
                        &app, [url](QObject *obj, const QUrl &objUrl) {
                            if (!obj && url == objUrl)
                                QCoreApplication::exit(-1);
                        }, Qt::QueuedConnection);
                    engine.load(url);
                
                    return app.exec();
                
                1 Reply Last reply
                0

                • Login

                • Login or register to search.
                • First post
                  Last post
                0
                • Categories
                • Recent
                • Tags
                • Popular
                • Users
                • Groups
                • Search
                • Get Qt Extensions
                • Unsolved