Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-84576

Qt 3D windeployqt/macdeployqt do not deploy isolated renderers plugins

    XMLWordPrintable

    Details

    • Platform/s:
      Linux/X11, macOS, Windows

      Description

      The OpenGL Renderer in Qt3D was isolated (as a plugin) in Qt 5.15. I am trying to deploy a Qt3D based application via windeployqt, linuxdeployqt and macdeployqt, but they all miss out on the renderers/openglrenderer plugin.

      Here is a working example to reproduce the problem on Win 10:

      1) Install VS2019 Build Tools

      2) Install Qt 5.15 MSVC 2019 64 bit via the online installer

      3) Create a new widget based project in QtCreator

      4) Add the following modules to the .pro file:

      QT += 3dcore 3drender 3dinput 3dextras
      

      5) Include a Qt3D class in mainwindow.cpp:

      #include <Qt3DRender/QCamera>
      

      6) Add the following to the MainWindow's constructor:

      Qt3DRender::QCamera* camera = new Qt3DRender::QCamera();
      

      7) Build project with the default QtCreator Kit
      8) Run windeployqt on the executable and get the following output:

      PS C:\Users\loren\Desktop\build-untitled-Desktop_Qt_5_15_0_MSVC2019_64bit-Release\release> C:\Qt\5.15.0\msvc2019_64\bin\windeployqt.exe .\untitled.exe
      C:\Users\loren\Desktop\build-untitled-Desktop_Qt_5_15_0_MSVC2019_64bit-Release\release\untitled.exe 64 bit, release executable
      Adding Qt5Svg for qsvgicon.dll
      Skipping plugin scene2d.dll due to disabled dependencies (Qt5Qml Qt5Quick).
      Adding Qt5Gamepad Qt53DInput Qt53DAnimation Qt53DExtras for assimpsceneimport.dll
      Direct dependencies: Qt5Core Qt5Widgets Qt53DCore Qt53DRender
      All dependencies : Qt5Concurrent Qt5Core Qt5Gui Qt5Network Qt5Widgets Qt53DCore Qt53DRender
      To be deployed : Qt5Concurrent Qt5Core Qt5Gamepad Qt5Gui Qt5Network Qt5Svg Qt5Widgets Qt53DCore Qt53DRender Qt53DInput Qt53DAnimation Qt53DExtras
      Warning: Cannot find Visual Studio installation directory, VCINSTALLDIR is not set.
      Updating Qt5Concurrent.dll.
      Updating Qt5Core.dll.
      Updating Qt5Gamepad.dll.
      Updating Qt5Gui.dll.
      Updating Qt5Network.dll.
      Updating Qt5Svg.dll.
      Updating Qt5Widgets.dll.
      Updating Qt53DCore.dll.
      Updating Qt53DRender.dll.
      Updating Qt53DInput.dll.
      Updating Qt53DAnimation.dll.
      Updating Qt53DExtras.dll.
      Updating libGLESv2.dll.
      Updating libEGL.dll.
      Updating D3Dcompiler_47.dll.
      Updating opengl32sw.dll.
      Creating directory C:/Users/loren/Desktop/build-untitled-Desktop_Qt_5_15_0_MSVC2019_64bit-Release/release/bearer.
      Updating qgenericbearer.dll.
      Creating directory C:/Users/loren/Desktop/build-untitled-Desktop_Qt_5_15_0_MSVC2019_64bit-Release/release/geometryloaders.
      Updating defaultgeometryloader.dll.
      Updating gltfgeometryloader.dll.
      Creating directory C:/Users/loren/Desktop/build-untitled-Desktop_Qt_5_15_0_MSVC2019_64bit-Release/release/iconengines.
      Updating qsvgicon.dll.
      Creating directory C:/Users/loren/Desktop/build-untitled-Desktop_Qt_5_15_0_MSVC2019_64bit-Release/release/imageformats.
      Updating qgif.dll.
      Updating qicns.dll.
      Updating qico.dll.
      Updating qjpeg.dll.
      Updating qsvg.dll.
      Updating qtga.dll.
      Updating qtiff.dll.
      Updating qwbmp.dll.
      Updating qwebp.dll.
      Creating directory C:/Users/loren/Desktop/build-untitled-Desktop_Qt_5_15_0_MSVC2019_64bit-Release/release/platforms.
      Updating qwindows.dll.
      Creating directory C:/Users/loren/Desktop/build-untitled-Desktop_Qt_5_15_0_MSVC2019_64bit-Release/release/sceneparsers.
      Updating assimpsceneimport.dll.
      Updating gltfsceneexport.dll.
      Updating gltfsceneimport.dll.
      Creating directory C:/Users/loren/Desktop/build-untitled-Desktop_Qt_5_15_0_MSVC2019_64bit-Release/release/styles.
      Updating qwindowsvistastyle.dll.
      Creating C:\Users\loren\Desktop\build-untitled-Desktop_Qt_5_15_0_MSVC2019_64bit-Release\release\translations...
      Creating qt_ar.qm...
      Creating qt_bg.qm...
      Creating qt_ca.qm...
      Creating qt_cs.qm...
      Creating qt_da.qm...
      Creating qt_de.qm...
      Creating qt_en.qm...
      Creating qt_es.qm...
      Creating qt_fi.qm...
      Creating qt_fr.qm...
      Creating qt_gd.qm...
      Creating qt_he.qm...
      Creating qt_hu.qm...
      Creating qt_it.qm...
      Creating qt_ja.qm...
      Creating qt_ko.qm...
      Creating qt_lv.qm...
      Creating qt_pl.qm...
      Creating qt_ru.qm...
      Creating qt_sk.qm...
      Creating qt_uk.qm...
      Creating qt_zh_TW.qm...
      

      9) Some plugins, e.g. geometryloaders, are deployed/copied correctly, but the renderers/openglrenderer.dll are missing (see screenshot below).

      I tried macdeployqt and linuxdeployqt and encountered the same problem.  

        Attachments

          Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              Assignee:
              qt.team.graphics.and.multimedia Qt Graphics Team
              Reporter:
              Lorenz Lorenz Esch
              Votes:
              1 Vote for this issue
              Watchers:
              6 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Gerrit Reviews

                  There are no open Gerrit changes