Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

How start compiler in Ubuntu 20



  • Hi!
    How start compiler in Ubuntu 20.
    I install "xcb" and and some other packages, but I get this error:

    qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
    This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
    
    Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.
    

  • Lifetime Qt Champion

    Hi
    What Qt version ?
    And how did you install it ?

    This i just experinced in older linux mint upgrading to Qt5.15



  • I use Qt 5.15, I use online installer.
    When installing on Windows, files did not arrive due to poor server speed and they had to be reinstalled. Maybe with Linux the same trouble.


  • Lifetime Qt Champion

    Hi,

    Set QT_DEBUG_PLUGINS environment variable to 1 and restart your application. You shall have more information about why it fails to load.



  • @SGaist said in How start compiler in Ubuntu 20:

    QT_DEBUG_PLUGINS

    I write in .pro file:

    QT_DEBUG_PLUGINS = 1
    

    But the debag didn't record anything else.


  • Lifetime Qt Champion

    @Mikeeeeee
    Hi
    You must do that in a shell.
    Not in the .pro file

    So open a shell
    type
    export QT_DEBUG_PLUGINS = 1
    and then start creator in this shell.

    If you dont know where creator is, you can right click its icon and edit it and see path there.



  • I don't understand you. Do I need to register this in the console?



  • @Mikeeeeee
    You need to do just what @mrjj stated:

    1. Open a console/terminal.
    2. Type: export QT_DEBUG_PLUGINS=1
    3. Type the path to the Qt Creator executable to run it.

    Because it has been run from a shell with that environment variable exported, you will get debug output showing you where it's looking for what, to diagnose your problem.



  • @JonB said in How start compiler in Ubuntu 20:

    export QT_DEBUG_PLUGINS = 1

    this

    export QT_DEBUG_PLUGINS = 1
    

    return errors:

    bash: export: «=»: this is an invalid identifier
    bash: export: «1»: this is an invalid identifier
    
    


  • @Mikeeeeee said in How start compiler in Ubuntu 20:
    I just copied what @mrjj typed. Correct is to remove the spaces:

    export QT_DEBUG_PLUGINS=1
    

    If it had been me, I would have typed man bash and searched for export for myself:

    export [-fn] [name[=word]] ...



  • I write this in folder "Qt", but qt did not issue any new errors. Still, maybe this is because the installer might not have downloaded the files?



  • @Mikeeeeee
    Prior to the qt.qpa.plugin: Could not load ... error message, because of the environment variable you should have output (in the terminal) on where it looked for plugin xcb but failed to find it.



  • It doesn't issue any more errors.
    I have only this build log:

    /home/admin1/Qt/5.15.0/gcc_64/bin/uic ../test/mainwindow.ui -o ui_mainwindow.h
    g++ -c -pipe -g -std=gnu++11 -Wall -Wextra -D_REENTRANT -fPIC -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../test -I. -I../../Qt/5.15.0/gcc_64/include -I../../Qt/5.15.0/gcc_64/include/QtWidgets -I../../Qt/5.15.0/gcc_64/include/QtGui -I../../Qt/5.15.0/gcc_64/include/QtCore -I. -isystem /usr/include/libdrm -I. -I../../Qt/5.15.0/gcc_64/mkspecs/linux-g++ -o main.o ../test/main.cpp
    g++ -pipe -g -std=gnu++11 -Wall -Wextra -dM -E -o moc_predefs.h ../../Qt/5.15.0/gcc_64/mkspecs/features/data/dummy.cpp
    g++ -c -pipe -g -std=gnu++11 -Wall -Wextra -D_REENTRANT -fPIC -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../test -I. -I../../Qt/5.15.0/gcc_64/include -I../../Qt/5.15.0/gcc_64/include/QtWidgets -I../../Qt/5.15.0/gcc_64/include/QtGui -I../../Qt/5.15.0/gcc_64/include/QtCore -I. -isystem /usr/include/libdrm -I. -I../../Qt/5.15.0/gcc_64/mkspecs/linux-g++ -o mainwindow.o ../test/mainwindow.cpp
    /home/admin1/Qt/5.15.0/gcc_64/bin/moc -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB --include /home/admin1/QtProjects/build-test-Desktop_Qt_5_15_0_GCC_64bit-Debug/moc_predefs.h -I/home/admin1/Qt/5.15.0/gcc_64/mkspecs/linux-g++ -I/home/admin1/QtProjects/test -I/home/admin1/Qt/5.15.0/gcc_64/include -I/home/admin1/Qt/5.15.0/gcc_64/include/QtWidgets -I/home/admin1/Qt/5.15.0/gcc_64/include/QtGui -I/home/admin1/Qt/5.15.0/gcc_64/include/QtCore -I. -I/usr/include/c++/9 -I/usr/include/x86_64-linux-gnu/c++/9 -I/usr/include/c++/9/backward -I/usr/lib/gcc/x86_64-linux-gnu/9/include -I/usr/local/include -I/usr/include/x86_64-linux-gnu -I/usr/include ../test/mainwindow.h -o moc_mainwindow.cpp
    g++ -c -pipe -g -std=gnu++11 -Wall -Wextra -D_REENTRANT -fPIC -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../test -I. -I../../Qt/5.15.0/gcc_64/include -I../../Qt/5.15.0/gcc_64/include/QtWidgets -I../../Qt/5.15.0/gcc_64/include/QtGui -I../../Qt/5.15.0/gcc_64/include/QtCore -I. -isystem /usr/include/libdrm -I. -I../../Qt/5.15.0/gcc_64/mkspecs/linux-g++ -o moc_mainwindow.o moc_mainwindow.cpp
    g++ -Wl,-rpath,/home/admin1/Qt/5.15.0/gcc_64/lib -o test main.o mainwindow.o moc_mainwindow.o   /home/admin1/Qt/5.15.0/gcc_64/lib/libQt5Widgets.so /home/admin1/Qt/5.15.0/gcc_64/lib/libQt5Gui.so /home/admin1/Qt/5.15.0/gcc_64/lib/libQt5Core.so -lGL -lpthread   
    


  • @Mikeeeeee
    I don't understand. Your output now shows a compilation. I thought your problem as reported by you was when you tried to start an application:

    qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
    This application failed to start ....

    I have not seen you reproduce that error message with the environment variable switched on.



  • This error persists. The error was always there and never changed.


  • Lifetime Qt Champion

    That's why we are asking you to start your application with the QT_DEBUG_PLUGINS environment variable set so that it provides more information at run time about what is happening to the xcb plugin.



  • I started using QT_DEBUG_PLUGINS, but nothing has changed. QT_DEBUG_PLUGINS need to be registered in the "Qt" folder?


  • Lifetime Qt Champion

    How are you using exactly ?



  • I write in folder "Qt" in console

    export QT_DEBUG_PLUGINS=1
    
    

  • Lifetime Qt Champion

    The folder has no influence on that environment variable. And are you starting your application from the same terminal were you defined the variable ?



  • I am restarted Qt.
    Maybe I'm not there to change this variable. Explain in which folder I need to change this variable?


  • Lifetime Qt Champion

    As I already said: the folder has absolutely nothing to do with the environnement variable.

    What do you mean by your restarted Qt ?



  • @Mikeeeeee
    This really isn't very hard. You originally showed

    qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
    This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
    
    Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-
    

    You ran a program to get this. I don't know whether it was Qt Creator or your own application, but it was one of them, whichever. Right?

    As we have already told you:

    1. Open a console/terminal.
    2. Type: export QT_DEBUG_PLUGINS=1
    3. Type the path to Qt Creator or your own executable to run it. Whichever one caused your original error.

    At this point you should get your error again, but this time the environment variable should cause debug output, stating which it can't load "xcb".



  • @JonBWhere and how do I specify the path to Qt Creator? Please provide a full example of using QT_DEBUG_PLUGINS.
    And maybe the QT_DEBUG_PLUGINS plugin doesn't work either?



  • @Mikeeeeee
    I have provided a full example. I have given you the exact steps. I would expect any developer to be able to follow them easily. I leave it to you.



  • @JonB Please explain point 3. It is not clear how, where, or why to record the path.


  • Lifetime Qt Champion

    @Mikeeeeee Why is it so hard?! Do you know what a path is?
    Just call QtCreator using full path to it, like:

    /home/YOUR_USER_NAME/Qt/Tools/QtCreator/bin/qtcreator.sh
    

    "And maybe the QT_DEBUG_PLUGINS plugin doesn't work either?" - QT_DEBUG_PLUGINS is not a plug-in! You already was told that it is an environment variable. I suggest you learn what an environment variable is (something a software developer should know).



  • I get this log with errors:

    QFactoryLoader::QFactoryLoader() checking directory path "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms" ...
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqeglfs.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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 "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqeglfs.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqlinuxfb.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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 "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqlinuxfb.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqminimal.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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 "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqminimal.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqminimalegl.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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 "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqminimalegl.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqoffscreen.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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 "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqoffscreen.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqvnc.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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 "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqvnc.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwayland-egl.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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 "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwayland-egl.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwayland-generic.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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 "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwayland-generic.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwayland-xcomposite-egl.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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 "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwayland-xcomposite-egl.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwayland-xcomposite-glx.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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 "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwayland-xcomposite-glx.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwebgl.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwebgl.so, metadata=
    {
        "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
        "MetaData": {
            "Keys": [
                "webgl"
            ]
        },
        "archreq": 0,
        "className": "QWebGLIntegrationPlugin",
        "debug": false,
        "version": 331520
    }
    
    
    Got keys from plugin meta data ("webgl")
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqwebgl.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so"
    Found metadata in lib /home/admin1/Qt/5.15.0/gcc_64/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() looking at "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so.debug"
    "The shared library was not found." 
             not a plugin
    QFactoryLoader::QFactoryLoader() checking directory path "/home/admin1/QtProjects/build-test-Desktop_Qt_5_15_0_GCC_64bit-Debug/platforms" ...
    Cannot load library /home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so: (libxcb-xinerama.so.0: невозможно открыть разделяемый объектный файл: Нет такого файла или каталога)
    QLibraryPrivate::loadPlugin failed on "/home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so" : "Cannot load library /home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so: (libxcb-xinerama.so.0: невозможно открыть разделяемый объектный файл: Нет такого файла или каталога)"
    qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
    This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
    
    Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.
    

  • Lifetime Qt Champion

    @Mikeeeeee "Cannot load library /home/admin1/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so: (libxcb-xinerama.so.0: невозможно открыть разделяемый объектный файл: Нет такого файла или каталога)" - libxcb-xinerama.so is missing.
    Install libxinerama1 package.



  • @Mikeeeeee
    Which is what we have waiting for you to try for a long time now! As you can see, setting the environment variable produces detailed output for others to analyze....



  • @jsulm I have libxinerama1 (2:1.1.4-2).
    It seems the error is in something else. Maybe some of the Qt components didn't install after all?


  • Lifetime Qt Champion

    @Mikeeeeee You actually need libxcb-xinerama0 package.



  • Thanks, it's help me!


Log in to reply