从 Linux 交叉编译到 Windows 时是否可以强制 Qt 使用 ANGLE?

qua*_*nta 6 opengl qt opengl-es go opengl-es-2.0

http://doc.qt.io/qt-5/windows-requirements.html

为了使 Qt Quick 2 工作,需要提供 OpenGL 2.1 或更高版本的图形驱动程序。Windows 的默认驱动程序是 OpenGL 1.1。

qt.scenegraph.general: Using sg animation driver
qt.scenegraph.general: Animation Driver: using vsync: 15.63 ms
qt.scenegraph.general: texture atlas dimensions: 512x1024
qt.scenegraph.general: R/G/B/A Buffers:    8 8 8 8
qt.scenegraph.general: Depth Buffer:       32
qt.scenegraph.general: Stencil Buffer:     8
qt.scenegraph.general: Samples:            -1
qt.scenegraph.general: GL_VENDOR:          Microsoft Corporation
qt.scenegraph.general: GL_RENDERER:        GDI Generic
qt.scenegraph.general: GL_VERSION:         1.1.0
qt.scenegraph.general: GL_EXTENSIONS:      GL_WIN_swap_hint GL_EXT_bgra GL_EXT_paletted_texture
qt.scenegraph.general: Max Texture Size:  1024
qt.scenegraph.general: Debug context:     false
Run Code Online (Sandbox Code Playgroud)

由于这个问题,我的应用程序在 Windows 上崩溃了。

我的同事尝试在 Windows 上构建它并且它可以工作,因为它回退到ANGLE

qt.scenegraph.general: windows render loop
qt.scenegraph.general: Using sg animation driver
qt.scenegraph.general: Animation Driver: using vsync: 15.63 ms
qt.scenegraph.general: texture atlas dimensions: 512x1024
qt.scenegraph.general: R/G/B/A Buffers:    8 8 8 8
qt.scenegraph.general: Depth Buffer:       24
qt.scenegraph.general: Stencil Buffer:     8
qt.scenegraph.general: Samples:            0
qt.scenegraph.general: GL_VENDOR:          Google Inc.
qt.scenegraph.general: GL_RENDERER:        ANGLE (Microsoft Basic Render Driver Direct3D11 vs_5_0 ps_5_0)
qt.scenegraph.general: GL_VERSION:         OpenGL ES 2.0 (ANGLE 2.1.0.8613f4946861)
Run Code Online (Sandbox Code Playgroud)

问题是我们正在使用threcipe/qt:windows_64_shared图像从 Linux 构建:https://github.com/therecipe/qt/wiki/Deploying-Linux-to-Windows-64-bit-Shared

我尝试过这样的事情:

  • export QT_OPENGL=angle建造时
  • D3Dcompiler_47.dlllibEGL.dlllibGLESV2.dll、复制opengl32sw.dll到应用程序文件夹

但应用程序在启动时挂起。即使使用 ,控制台中也没有日志QT_DEBUG_CONSOLE=true

ANGLE在 Linux 上构建时是否可以强制使用 Qt ?如果是,怎么办?