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
Из-за этой проблемы мое приложение падает на 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)
Дело в том, что мы строим из Linux, используя threcipe/qt:windows_64_shared
image: https://github.com/therecipe/qt/wiki/Deploying-Linux-to-Windows-64-bit-Shared
Я попробовал кое-чтонапример:
export QT_OPENGL=angle
при сборке - копирование
D3Dcompiler_47.dll
, libEGL.dll
, libGLESV2.dll
и opengl32sw.dll
в папку приложения
но приложение зависает при запуске.В консоли нет журналов даже с QT_DEBUG_CONSOLE=true
.
Можно ли заставить Qt использовать ANGLE
при сборке в Linux?Если да, то как?