Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Qt Widget application created in Qt Creator requires opengl32.dll



  • Hi. I've been using Qt for several smaller applications and recently I've been working on an QtWidget application to be ran in a Windows preinstallation environment. When I attempted to run it though to test for bugs, I discovered that it required opengl32.dll, glu32.dll, and ddraw.dll which is very odd to me. Is there a way to have my application not use opengl?



  • You may have to build your own Qt.

    You can create your own build with the flags you need (ICU, WebEngine or WebKit, OpenSSL, etc). To disable OpenGL completely you'll just pass the switch -no-opengl and -debug-and-release to have both release and debug libraries.

    More here: http://doc.qt.io/qt-5/windows-building.html



  • Having to go to such an extreme to go OpenGL free feels rather extreme. There has to be a more optimal way of having it not leverage it in the project.

    Also, That guide is extremely vague and has quite a few holes in it to say the least. Where is the archive file downloaded from? What are the details for MinGW usage? After two years of using this framework I am convinced that the lack of complete documentation is one of the major weakpoints of Qt.



  • This is not extreme, considering alternative would be building and supporting switching between multiple graphics engines at runtime which would have speed and size penalties.

    Also working with Qt for about 15 years I think Qt has very well designed and complete documentation for so big and constantly developing project.

    But nothing is ideal in this world and you always can help to make it better.


  • Moderators

    Hi @dk0383,

    AFAIK, the official builds of Qt 5.5 and later checks at runtime to see if OpenGL is present. If it's not present, then Qt won't load it but your program should continue working.



  • I think what @JKSH is referring to is -opengl dynamic which is what I'm also using in my windows builds since it's pretty convenient. You can read more on it here: http://doc.qt.io/qt-5/windows-requirements.html#dynamically-loading-graphics-drivers


  • Moderators

    @David.G said:

    I think what @JKSH is referring to is -opengl dynamic

    That's right.

    which is what I'm also using in my windows builds since it's pretty convenient.

    The official builds of Qt 5.5 use it too. The OP doesn't need to create a custom build; just download and install.

    You can read more on it here: http://doc.qt.io/qt-5/windows-requirements.html#dynamically-loading-graphics-drivers

    Thanks for the link!