[Solved] Deploying Qt Quick 2 application in OpenGL < 2 environment
-
I've developed an application using Qt Quick 2, and ran into some problems deploying it to systems with OpenGL 1.4. Unfortunately, the hardware in those systems can't support OpenGL 2, and Qt Quick 2 requires it. Is there a solution where I don't have to scrape all my UI and reimplement it with QWidgets?
I've seen on "this post":http://qt-project.org/forums/viewthread/34075 and "this post":https://qt-project.org/forums/viewthread/30483 that it might be possible with a MESA lib? If that is so, how can I convert my project to use the MESA lib?
Edit: "This link":http://qt-project.org/wiki/QtQuick2-and-OpenGL-vs-DirectX-vs-Mesa suggests that for my project to use the MESA lib, I must build opengl32.dll and keep it in the same directory as my application's executable file. Looking for info on how to build MESA, I came across "this article":http://qt-project.org/wiki/Cross-compiling-Mesa-for-Windows, that details how to build the library with MinGW. My project is built with Qt VS 2010, would the MESA lib work with my application?
Edit 2: I didn't try the MESA solution because I couldn't manage to build it. I solved the problem by using a Qt built that uses ANGLE. At first I discarded this option because I read in "this thread":http://qt-project.org/forums/viewthread/32056 that in Windows XP, ANGLE "does not fully work and may lead to crashes". "This other post":http://qt-project.org/forums/viewthread/32056 says that it should be fine as long as XP is SP2 or higher though, which is the case for me. So I went with ANGLE, and apparently it worked.
-
According this article: "http://blog.qt.digia.com/blog/2012/10/24/graphics-on-windows-from-a-different-angle/":http://blog.qt.digia.com/blog/2012/10/24/graphics-on-windows-from-a-different-angle/
They suggest to use ANGLE instead of OpenGL for this kind of situation.
Hope this help
-
The system I have to deploy in is Windows XP, and apparently ANGLE has issues with XP. So I'm stuck with OpenGL.
-
If both ANGLE and OpenGL 2 are unavailable, then Qt Quick 2 is unavailable.
One possible solution is to fall back to Qt Quick 1.
-
What about MESA? Is it a waste of time? I've made use of Qt Quick controls, so I'm not sure I could fall back to Qt Quick 1, aren't controls exclusive to Qt Quick 2?
-
Hmm... the Wiki suggests that it can be done. It's not officially supported though and I've never used it before, so I can't say how well it works. I think it's worth a shot though.
Yeah, Qt Quick Controls is exclusive to Qt Quick 2. However, its precursor, "Qt Desktop Components":http://blog.qt.digia.com/blog/2011/03/10/qml-components-for-desktop/, can be used with Qt Quick 1. (You'll have to download the code and build it yourself though)
-
Turns out ANGLE works with Windows XP SP2, according to "this thread.":http://qt-project.org/forums/viewthread/32056 I couldn't manage to try out MESA though, couldn't build it.