QTQuick2 Application wont start on some platforms
-
Hello together,
i got a problem with QTQuick2 applications. They do not start on some computers:
First i tried with QT 5.3.1 OpenGL for Win32 MSVC2013. I Created a new Project "QTQuick Application"->"QtQuick 2.2". So i got a simple Hello World Test application and copied all relevant dlls into the folder (using windeployqt.exe + aditional folders (Qt, QtQuick, QtQuick.2))
On my system it runs without problems and so does it on many other windows computers (windows 7 32bit and 64bit).
But on some computers the application just opens a white window (the size is the original size) without the "hello world" text. In the example the whole window acts as "quit-button" and so it does on this computer, so the quit button is working, just the gui is not visible!
I get the same problem on virtual machines (every virtual machine i tested so far). So i found out this is most likely because this computers have no (or not the right) openGL drivers installed and that in this case you should use the ANGLE Build of QT.So i tried QT 5.3.1 for Win32 MSVC2013 (Without openGL, so it must use ANGLE) from the Download page.
I created a new project "QTQuick application" and used QtQuick2.2 again. i got my Hello World project and it run fine on my computer.
i again copied all relevant dlls into the folder (using windeployqt.exe + aditional folders (Qt, QtQuick, QtQuick.2)). This time it had automatically copied the ANGLE-relevant files "D3DCompiler_47.dll", "libGLESv2.dll" and "libEGL.dll" so i guess now i do not need openGL anymore.And again on most computers it works but on the same it didnt work withe the former openGL build it did not work here. This time my window did not come up but there was an error message saying "Failed to create OpenGL context for format QSurfaceFormat ......." and "Install a driver providing OpenGL 2.0 or higher or make sure ANGLE opengl ES 2.0 Emulation libraries (libEGL.dll, libGLESv2.dll and d3dcompiler_*.dll) are available in the application directory.". Those files DO exist in the directory and when i use ProcessExplorer i can see that my exe loads them.
I thought, maybe it is a bug in QT 5.3.1 and i tried with QT 5.0.1 for Win32 using MINGW (again without OpenGL) but here i get errors too.
================================
Beside the virtual machines where i get these errors there are 2 hardware computers where i get them. A win7 32bit and a win7 64bit. Both are fresh installed and seme to have no special graphic card driver installed. DXDIAG.exe says for DirectDraw and Direct3D "not available" and i guess that is why my QtQuick2 application wont start.
So is this right? Can't i run a simple QtQuick2 GUI Application on all windows machines without installing proper graphic drivers? Or what is the clue here?
I need to build an application which runs out of the box without installing drivers on all Windows 7 systems (hardware and virtual machines). Is this possible with QtQuick2?Thank you and kind regards,
Andreas -
Hi Andreas
we had the similar problem.
Our final solution was to switch to QtQuick1.x, because QtQuick2 depends heavely on GL.dan
-
Hi dan,
Thank you for your post. I always thought QtQuick1 cannot be used for iOS (and i will need to port my application later to iOS), but it seems that i misunderstood this. Apperently it will also work on iOS (when i use QT 5.3).
So i will try to port my application to QtQuick1.1 now. I guess it then does not matter whether i use the QT OpenGL or the QT ANGLE Build, right?Thank you and kind regards,
Andreas -
Hi Andreas
I have no experience wth iOS. For us the problem appears with M$ OS
and we us OpenGL, also for 1.1.
How do you build for iOS? Do you use a Mac OS X system?
Thanks
dan