Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. No Qt Platform Plugin Could Be Initialized -- no qwindows.dll in Qt build directory?
Forum Updated to NodeBB v4.3 + New Features

No Qt Platform Plugin Could Be Initialized -- no qwindows.dll in Qt build directory?

Scheduled Pinned Locked Moved Unsolved Installation and Deployment
16 Posts 4 Posters 13.4k Views 1 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.
  • SGaistS Offline
    SGaistS Offline
    SGaist
    Lifetime Qt Champion
    wrote on last edited by
    #2

    Hi and welcome to devnet,

    Before using a custom build I would start with the latest pre-built release so you have a known working starting point.

    Next, retry with your self built Qt.

    That said, can you share the configure line you used ?

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

    J 1 Reply Last reply
    0
    • J JW16

      Hello,
      I have been working on porting an application from Qt 4 to Qt 5.15.5. I got to the point where my application source code builds with qmake and compiles, however, when attempting to launch the executable, I get the following error:

      "
      Program: C:\Code\<MyAppSourceCode>\bin\Win64.NET2015\QtCored.dll
      Module: 5.15.5
      File: C:\Qt\<MyQt5.15.5GitRepo>\qtbase\src\gui\kernel\qguiapplication.cpp
      Line: 1254

      This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

      Available platform plugins are: minimal, offscreen, webgl.
      "

      When building Qt5.15.5, I followed the instructions described here for obtaining the source, configuring, and building.
      My build is targeted for win32-msvc and I only deviated from the suggested configure command to add the --opengl desktop option.

      I have copied all of the Qt5 dll's from C:\Qt\<MyQtBuildDir>\qtbase\bin\ into C:\Code\<MyAppSourceCode>\bin\Win64.NET2015\ (just to be safe, although I should only require a subset of them), as well as copying over the ...\qtbase\plugins\platforms directory. That platforms directory contains dll/lib/etc. files for qminimal, qoffscreen, and qwebgl.

      After doing some digging online, I tried running windeployqt.exe like so:
      windeployqt --debug --pdb --no-quick-import --no-angle --no-webkit2
      and am again met with the message "Unable to find the platform plugin." after it displays the dependencies it found to be deployed (concurrent, core, gui, network, script, svg, widgets, xml)

      Some more digging online seems to suggest I may need the qwindows.dll from the qtbase\plugins\platforms directory, but no such file exists in my Qt build. Is this because I configured/built Qt incorrectly in some way? Is there something else going on here?

      Christian EhrlicherC Offline
      Christian EhrlicherC Offline
      Christian Ehrlicher
      Lifetime Qt Champion
      wrote on last edited by
      #3

      @JW16 said in No Qt Platform Plugin Could Be Initialized -- no qwindows.dll in Qt build directory?:

      I have copied all of the Qt5 dll's from C:\Qt<MyQtBuildDir>\qtbase\bin\ into C:\Code<MyAppSourceCode>\bin\Win64.NET2015\ (just to be safe, although I should only require a subset of them), as well as copying over the ...\qtbase\plugins\platforms directory. That platforms directory contains dll/lib/etc. files for qminimal, qoffscreen, and qwebgl.

      This is wrong. Put your Qt dlls in your PATH or properly deploy the Qt dlls to your executable folder via windeployqt which also copies the plugins to the correct directory (to <exe-file>/<plugin-type> as described here, second paragraph).

      Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
      Visit the Qt Academy at https://academy.qt.io/catalog

      J 1 Reply Last reply
      0
      • Christian EhrlicherC Christian Ehrlicher

        @JW16 said in No Qt Platform Plugin Could Be Initialized -- no qwindows.dll in Qt build directory?:

        I have copied all of the Qt5 dll's from C:\Qt<MyQtBuildDir>\qtbase\bin\ into C:\Code<MyAppSourceCode>\bin\Win64.NET2015\ (just to be safe, although I should only require a subset of them), as well as copying over the ...\qtbase\plugins\platforms directory. That platforms directory contains dll/lib/etc. files for qminimal, qoffscreen, and qwebgl.

        This is wrong. Put your Qt dlls in your PATH or properly deploy the Qt dlls to your executable folder via windeployqt which also copies the plugins to the correct directory (to <exe-file>/<plugin-type> as described here, second paragraph).

        J Offline
        J Offline
        JW16
        wrote on last edited by
        #4

        @Christian-Ehrlicher

        Ok.

        If I delete the platforms dir and all of the Qt5 dll's from my executable, then run:
        windeployqt --debug --pdb --no-quick-import --no-angle --no-webkit2 from \qtbase\bin, targeted at my executable folder, I again get "Unable to find the platform plugin." message after it lists my dependencies, and nothing happens (nothing is copied).

        With the Qt dll's from my Qt build dir in my path, I get the exact same error message as in my original post when trying to launch my executable.

        Do you have any other suggestions?

        1 Reply Last reply
        0
        • Christian EhrlicherC Offline
          Christian EhrlicherC Offline
          Christian Ehrlicher
          Lifetime Qt Champion
          wrote on last edited by
          #5

          Did you compile Qt but did not install it afterwards? What does qmake -query tells you where it expects it's dlls. Then make sure there are no other Qt5 dlls in your PATH and maybe use a pre-build binary Qt distribution as @SGaist suggested. Then you can also use the latest Qt6 version - if it compiles with Qt5.15 without any deprecation warnings it will most likely also compile with the latrst Qt6 version.

          Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
          Visit the Qt Academy at https://academy.qt.io/catalog

          J 1 Reply Last reply
          0
          • SGaistS SGaist

            Hi and welcome to devnet,

            Before using a custom build I would start with the latest pre-built release so you have a known working starting point.

            Next, retry with your self built Qt.

            That said, can you share the configure line you used ?

            J Offline
            J Offline
            JW16
            wrote on last edited by
            #6

            @SGaist

            Where can I download the prebuilt release of 5.15.5? I only saw links to the git repo and a zip package of the source when I looked.

            I believe my configure line was configure -developer-build -opensource -nomake examples -nomake tests -opengl desktop -confirm-license

            1 Reply Last reply
            0
            • Christian EhrlicherC Offline
              Christian EhrlicherC Offline
              Christian Ehrlicher
              Lifetime Qt Champion
              wrote on last edited by
              #7

              The Qt online installer can be found here.

              Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
              Visit the Qt Academy at https://academy.qt.io/catalog

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

                For the Qt 5 series, 5.15.3 and above are source release only.

                Don't use developer builds unless you plan on hacking Qt itself.

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

                1 Reply Last reply
                0
                • Christian EhrlicherC Christian Ehrlicher

                  Did you compile Qt but did not install it afterwards? What does qmake -query tells you where it expects it's dlls. Then make sure there are no other Qt5 dlls in your PATH and maybe use a pre-build binary Qt distribution as @SGaist suggested. Then you can also use the latest Qt6 version - if it compiles with Qt5.15 without any deprecation warnings it will most likely also compile with the latrst Qt6 version.

                  J Offline
                  J Offline
                  JW16
                  wrote on last edited by
                  #9

                  @Christian-Ehrlicher

                  From the page I linked in my OP:
                  "The -developer-build option causes more symbols to be exported in order to allow more classes and functions to be unit tested than in a regular Qt build. It also defaults to a 'debug' build, and installs the binaries in the current directory, avoiding the need for 'make install'."

                  So I should not have a need to install.

                  qmake -query output:
                  QT_SYSROOT:
                  QT_INSTALL_PREFIX:C:/Qt/5.15.5-Win64.NET2015/qtbase
                  QT_INSTALL_PREFIX/src:C:/Qt/qt5/qtbase
                  QT_INSTALL_ARCHDATA:C:/Qt/5.15.5-Win64.NET2015/qtbase
                  QT_INSTALL_ARCHDATA/src:C:/Qt/qt5/qtbase
                  QT_INSTALL_DATA:C:/Qt/5.15.5-Win64.NET2015/qtbase
                  QT_INSTALL_DATA/src:C:/Qt/qt5/qtbase
                  QT_INSTALL_DOCS:C:/Qt/5.15.5-Win64.NET2015/qtbase/doc
                  QT_INSTALL_DOCS/src:C:/Qt/qt5/qtbase/doc
                  QT_INSTALL_HEADERS:C:/Qt/5.15.5-Win64.NET2015/qtbase/include
                  QT_INSTALL_HEADERS/src:C:/Qt/qt5/qtbase/include
                  QT_INSTALL_LIBS:C:/Qt/5.15.5-Win64.NET2015/qtbase/lib
                  QT_INSTALL_LIBS/src:C:/Qt/qt5/qtbase/lib
                  QT_INSTALL_LIBEXECS:C:/Qt/5.15.5-Win64.NET2015/qtbase/bin
                  QT_INSTALL_LIBEXECS/src:C:/Qt/qt5/qtbase/bin
                  QT_INSTALL_BINS:C:/Qt/5.15.5-Win64.NET2015/qtbase/bin
                  QT_INSTALL_BINS/src:C:/Qt/qt5/qtbase/bin
                  QT_INSTALL_TESTS:C:/Qt/5.15.5-Win64.NET2015/qtbase/tests
                  QT_INSTALL_TESTS/src:C:/Qt/qt5/qtbase/tests
                  QT_INSTALL_PLUGINS:C:/Qt/5.15.5-Win64.NET2015/qtbase/plugins
                  QT_INSTALL_PLUGINS/src:C:/Qt/qt5/qtbase/plugins
                  QT_INSTALL_IMPORTS:C:/Qt/5.15.5-Win64.NET2015/qtbase/imports
                  QT_INSTALL_IMPORTS/src:C:/Qt/qt5/qtbase/imports
                  QT_INSTALL_QML:C:/Qt/5.15.5-Win64.NET2015/qtbase/qml
                  QT_INSTALL_QML/src:C:/Qt/qt5/qtbase/qml
                  QT_INSTALL_TRANSLATIONS:C:/Qt/5.15.5-Win64.NET2015/qtbase/translations
                  QT_INSTALL_TRANSLATIONS/src:C:/Qt/qt5/qtbase/translations
                  QT_INSTALL_CONFIGURATION:
                  QT_INSTALL_EXAMPLES:C:/Qt/5.15.5-Win64.NET2015/qtbase/examples
                  QT_INSTALL_EXAMPLES/src:C:/Qt/qt5/qtbase/examples
                  QT_INSTALL_DEMOS:C:/Qt/5.15.5-Win64.NET2015/qtbase/examples
                  QT_INSTALL_DEMOS/src:C:/Qt/qt5/qtbase/examples
                  QT_HOST_PREFIX:C:/Qt/5.15.5-Win64.NET2015/qtbase
                  QT_HOST_PREFIX/src:C:/Qt/qt5/qtbase
                  QT_HOST_DATA:C:/Qt/5.15.5-Win64.NET2015/qtbase
                  QT_HOST_DATA/src:C:/Qt/qt5/qtbase
                  QT_HOST_BINS:C:/Qt/5.15.5-Win64.NET2015/qtbase/bin
                  QT_HOST_BINS/src:C:/Qt/qt5/qtbase/bin
                  QT_HOST_LIBS:C:/Qt/5.15.5-Win64.NET2015/qtbase/lib
                  QT_HOST_LIBS/src:C:/Qt/qt5/qtbase/lib
                  QMAKE_SPEC:win32-msvc
                  QMAKE_XSPEC:win32-msvc
                  QMAKE_VERSION:3.1
                  QT_VERSION:5.15.5

                  (C:\Qt\qt5 is where I checked out the code, \Qt\5.15.5-Win64.NET2015 is where I built it)

                  @SGaist

                  • Don't use developer builds unless you plan on hacking Qt itself.

                  This port of the application is in the experimental stage (it is a very large application and will likely take a lot more time to get other 3rd party libraries updated and everything playing nicely), so I wanted as much debugging capability as possible for now

                  1 Reply Last reply
                  0
                  • Christian EhrlicherC Offline
                    Christian EhrlicherC Offline
                    Christian Ehrlicher
                    Lifetime Qt Champion
                    wrote on last edited by
                    #10

                    @JW16 said in No Qt Platform Plugin Could Be Initialized -- no qwindows.dll in Qt build directory?:

                    C:/Qt/5.15.5-Win64.NET2015/qtbase/plugins

                    Is this directory available and is there the 'platforms' subdir with a qwindows.dll and qwindowsd.dll?

                    Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                    Visit the Qt Academy at https://academy.qt.io/catalog

                    J 1 Reply Last reply
                    0
                    • hskoglundH Online
                      hskoglundH Online
                      hskoglund
                      wrote on last edited by
                      #11

                      Hi, also please run the qtdiag program and verify that in the Library info: part it says:
                      PluginsPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\plugins

                      J 1 Reply Last reply
                      0
                      • Christian EhrlicherC Christian Ehrlicher

                        @JW16 said in No Qt Platform Plugin Could Be Initialized -- no qwindows.dll in Qt build directory?:

                        C:/Qt/5.15.5-Win64.NET2015/qtbase/plugins

                        Is this directory available and is there the 'platforms' subdir with a qwindows.dll and qwindowsd.dll?

                        J Offline
                        J Offline
                        JW16
                        wrote on last edited by
                        #12

                        @Christian-Ehrlicher

                        Yes, the platforms subdir is available, and it contains the release and debug dll's for qminimal, qoffscreen, and qwebgl.

                        There is no qwindows.dll or qwindowsd.dll, which was what my original post was asking about -- is it due to me building Qt incorrectly or missing some option somehwere?

                        1 Reply Last reply
                        0
                        • hskoglundH hskoglund

                          Hi, also please run the qtdiag program and verify that in the Library info: part it says:
                          PluginsPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\plugins

                          J Offline
                          J Offline
                          JW16
                          wrote on last edited by
                          #13

                          @hskoglund

                          qtdiag output:
                          "
                          qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
                          This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

                          Available platform plugins are: minimal, offscreen, webgl.
                          "

                          :(

                          All signs point to me needing the qwindows.dll, yet it was not created when I built Qt somehow

                          1 Reply Last reply
                          0
                          • hskoglundH Online
                            hskoglundH Online
                            hskoglund
                            wrote on last edited by
                            #14

                            Could you try qtdiag again, but this time using the qminimal dll (which is present):
                            qtdiag -platform minimal
                            and see what the Library info: part says...

                            J 1 Reply Last reply
                            0
                            • Christian EhrlicherC Offline
                              Christian EhrlicherC Offline
                              Christian Ehrlicher
                              Lifetime Qt Champion
                              wrote on last edited by
                              #15

                              I doubt it will work when the windows plugin was not built. Use a newer compiler - maybe it's not supported with this ancient compiler.

                              /edit: it needs a recent DirectX SDK according the pro-file:

                              win32:!winrt:qtConfig(direct3d9): SUBDIRS += windows

                              either use a recent compiler (which ships a recent DirectX SDK) or install the DirectX SDK separately and make sure configure.bat finds it so qwindows(d).dll can be built.

                              Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                              Visit the Qt Academy at https://academy.qt.io/catalog

                              1 Reply Last reply
                              0
                              • hskoglundH hskoglund

                                Could you try qtdiag again, but this time using the qminimal dll (which is present):
                                qtdiag -platform minimal
                                and see what the Library info: part says...

                                J Offline
                                J Offline
                                JW16
                                wrote on last edited by
                                #16

                                @hskoglund

                                qtdiag -platform minimal:
                                This plugin does not support createPlatformOpenGLContext!
                                This plugin does not support createPlatformOpenGLContext!
                                QRhiGles2: Failed to create temporary context
                                This plugin does not support createPlatformOpenGLContext!
                                QRhiGles2: Failed to create context
                                Qt 5.15.5 (x86_64-little_endian-llp64 shared (dynamic) release build; by MSVC 2015) on "minimal"
                                OS: Windows 10 Version 2009 [winnt version 10.0.19044]

                                Architecture: x86_64; features: SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AVX AVX2 RTM HLE

                                Environment:
                                QMAKESPEC="win32-msvc"
                                QTDIR="C:\Qt\5.15.5-Win64.NET2015"
                                QTVER="5.15.5"

                                Features: QT_NO_EXCEPTIONS QT_NO_OPENSSL

                                Library info:
                                PrefixPath: C:\Qt\5.15.5-Win64.NET2015\qtbase
                                DocumentationPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\doc
                                HeadersPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\include
                                LibrariesPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\lib
                                LibraryExecutablesPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\bin
                                BinariesPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\bin
                                PluginsPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\plugins
                                ImportsPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\imports
                                Qml2ImportsPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\qml
                                ArchDataPath: C:\Qt\5.15.5-Win64.NET2015\qtbase
                                DataPath: C:\Qt\5.15.5-Win64.NET2015\qtbase
                                TranslationsPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\translations
                                ExamplesPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\examples
                                TestsPath: C:\Qt\5.15.5-Win64.NET2015\qtbase\tests
                                SettingsPath:

                                @Christian-Ehrlicher Where are you seeing this? Which .pro file are you talking about?

                                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