Building the Tic Tac Toe demo app for Windows
-
For 3 weeks now I have struggled to get the Windows 7 build process working with Qt 5. I cannot build an independent standalone app that runs on a Windows system without Qt, though I can run the apps fine on a separate system inside Qt Creator. I am using identical virtual machine environments for my testing, one with Qt installed and one without.
I have seen many many threads on this topic and have included just about every dll mentioned anywhere, used dependency walker, and while I can get past the "dll not found" errors I cannot get the app to load, it just crashes on launch with various errors like "cannot start" or "runtime terminated in an unusual way". This is an unedited demo project included with Qt 5 that runs fine in Creator.
It would be a great help if someone with more experience with Qt could try to build this for Windows 7 and inform on what is done to get it to work. 3 weeks is a really long time to try and understand a build process, but it appears I am not alone in this frustration of using Qt with Windows. There must be a simpler way. What am I missing?
The path to the Qt demo app in question is shown on this screenshot:
"https://www.dropbox.com/s/xxmjlfrgb1gm03e/tictac.png":https://www.dropbox.com/s/xxmjlfrgb1gm03e/tictac.png
Mingw/OpenGL version of Qt 5.1
The exact installer I’m using is:
http://download.qt-project.org/official_releases/qt/5.1/5.1.0/qt-windows-opensource-5.1.0-mingw48_opengl-x86-offline.exe.mirrorlist -
Hi,
You should mention which version of Qt you have installed (msvc, mingw, opengl, angle) etc...
-
nice question
-
Mingw/OpenGL version of Qt 5.1
The exact installer I'm using is:
-
Just to be sure, did you get the platform plugins in the right place ?
-
Well, as far as I know I did, in that dependency walker did not report that there were missing. In fact the only odd thing that dependency walker shows is the missing ieshims.dll which I've read a few others see on there as well. It is an IE dll so why dependency walker shows that I don't know.
If it shows nothing else, then I can assume the platform plugins are in the correct place? I was following some suggestions in other threads, such as here:
http://qt-project.org/forums/viewthread/25642/#139487
I'm truly amazed how unnecessarily complicated this process is to build for Windows!
-
Dependency Walker won't report plugin dependency (that's why they are plugins)
But the platform plugin is explained in the "deployment guide":http://qt-project.org/doc/qt-5.0/qtdoc/deployment-windows.html
-
According to that guide, which I've read thoroughly many times, lacking just the plugins would still allow the executable to run, even if functionality is not there:
"If the application starts without any problems, then we have successfully made a dynamically linked version of the Plug & Paint application. But the application's functionality will still be missing since we have not yet deployed the associated plugins."
I am trying a different demo app than Plug & Paint, but how accurate is this statement? I am unable to get the executable to run at all.
Furthermore, how can we know exactly which plugins an app is requiring if they are not reported in the dependency walker; where is it possible to see a list? Perhaps in Creator somewhere?
-
It depends on what Qt module you are using (database), image format you want to support etc... So there's no definitive answer to that one.
But the platform plugin is a must have to start
-
I do have the platforms/qwindows.dll plugin for the platform.
I really hope someone can provide more detailed assistance on this, it can't be hard for anyone with good Qt experience and it would help a lot of people out to know more specifics on how to actually get a build working for Windows.