msys2 / MINGW-packages

Package scripts for MinGW-w64 targets to build under MSYS2.
https://packages.msys2.org
BSD 3-Clause "New" or "Revised" License
2.24k stars 1.21k forks source link

Qt5 should use dynamic OpenGL #924

Closed rubenvb closed 1 month ago

rubenvb commented 8 years ago

For people with older graphics cards and/or bad OpenGL drivers, Qt5 applications (such as Qt Creator) built/run with the current version of Qt 5 in the repository only see a black screen.

This issue was reported a looooong time ago as it first appeared in parts of the Qt Creator welcome screen inside Virtualbox: https://bugreports.qt.io/browse/QTBUG-34964. Note the final comment mentioning the development and becoming default of the "dynamic OpenGL" option in Qt 5.5+

I noticed the long-awaited fix by the Qt team, i.e. "dynamic" OpenGL, was not used in the MINGW-packages version of Qt5, essentially presenting me (and others with bad OpenGL drivers/GPUs) with a black screen and nothing more. The culprit, if I read it correctly, is this line:

#_opengl=dynamic

Which should be uncommented. I lack the computing power to quickly verify this by rebuilding Qt, but the standalone Qt Creator download provided by the Qt Project (which is most probably built with the dynamic OpenGL option) functions perfectly fine. Please change this!

jho101 commented 8 years ago

I can confirm that "msys2 qt creator" is showing black window in vmware but qtCreator from qt.io is working correctly.

DavidEGrayson commented 8 years ago

From commit 3697c0b it looks like @AlexPux is working on this.

@rubenvb and @jho101: How big is this problem? Is every part of Qt5 creator unusable? Are you able to run other, simpler Qt5 applications? How likely is it that a physical machine (i.e. a non-virtual machine) would be affected?

rubenvb commented 8 years ago

@DavidEGrayson I guess any QtQuick application and I don't know to what extent normal Qt applications that run on "bad" OpenGL hardware platforms, i.e. older Intel GPUs, will experience this issue.

kmlyn commented 8 years ago

The problem still persists. A workaround is disabling at least Welcome screen. Of course nothing QtQuick will work as well. Please change opengl support from desktop to dynamic.

nickdiego commented 7 years ago

Yes, I'm able to reproduce this with updated MSYS2 environment. Also reported some details of my specific evironment in #1649. Currently, I'm trying to use Arch's mingw-w64-qt5-base-dynamic (by @Martchus ) to cross compile my Qt Quick 2 app. It seems to work, but I'm getting some problems with CMake stuff (probably due to some recent patches).

Martchus commented 7 years ago

@nickdiego Thanks for the feedback. Good that it works. I actually haven't tested it myself yet (just whether it compiles). I am aware of a problem with CMake (build script attempts to add plugin target twice). You could try this fix: https://github.com/Martchus/PKGBUILDs/commit/d6e279ad10fc93e26b425bb81b9511af4e4b3b6c I haven't been uploading it to the AUR yet. If you rebuild it on your own, note that you have to rebuild both, the base package and declarative.

BTW: If you wanted to make the dynamic switch work also in MSYS2 you have to ensure that configure.bat is used or you have to patch the configure shell script like I did.

MehdiChinoune commented 1 month ago

Fixed by #21422