MinGW Qt Application Deployment NOT WORKING
Before anything: yes, I have followed the guide: http://qt-project.org/doc/qt-5.0/qtdoc/deployment-windows.html
My platform target is windows.
My toolchain is mingw.
I am using Qt Creator.
When I try deploying the application in its own folder with all the necessary DLL files, it seems to work on my dev machine. HOWEVER: on other machines I get these dialogs following a crash:
What is weird to me is that on my dev machine, when I rename the Qt installation folder, "C:\Qt", to "C:\Qt2" or something, I get the same crash on my dev machine as well. Is there some strange dependency to the Qt installation folder that I have to modify or something that I don't know about? :(
Oh yeah, here's what my .pro file looks like:
Project created by QtCreator 2013-02-19T19:51:30
QT += core gui network xml
greaterThan(QT_MAJOR_VERSION, 4): QT += multimedia widgets multimediawidgets
TARGET = MultimediaCaptionEditor
TEMPLATE = app
SOURCES += ...
HEADERS += ...
[edit, Picture links updated, koahnig]
welcome to devnet
I have updated your post's picture links. In this way the pictures are shown right away in your post making it easier to read. Please check out "this guide":http://qt-project.org/wiki/ForumHelp#b642e0c67b7a32cc0b833ea119693dce
Did you check with dependency walker outside of creator which dlls are loaded?
It looks a bit strange that a vc runtime dll is reported while you are using MinGW.
The Qt installation folder cannot be easily renamed. It is embedded in some of required executable.
Thank you for updating my post. Yes, it is strange but I can assure you: I am using mingw32-make.exe in my build settings. So yes, I am in fact using mingw.
I tried looking at a dependency walker, but the problem is I do not understand how to interpret what it is telling me. This is a screen shot of appear to be the only two issues:
!http://i.imgur.com/ONdeq9X.png(dependency walker output)!
The dependency walker helps to understand what and from where the dlls are loaded. This might help you to ensure that the right version of dlls are loaded (compare folders). It happened to me that an old version of a Qt dll shipped with an installed application was loaded. That was quite an old version and caused a crash because of incompatibility. With Qt 5 this not be a problem yet.
You see two dlls which could not be loaded (see red error message on the right). In general that would be a problem. However, those two shown in your screen shot are also listed with my applications. But those are somehow exclusion of the general case they are not creating a problem. Do not ask why, I do not know ( and I do not bother :) .
The only way for you I see is that you are comparing the setup which works against the setup when it does not. Even so you are using MinGW there are at least one MS specific dll loaded. Possibly you have access through the environment path to an outdated version. However, that is crystal ball reading.
I have exactly the same Problem. I missing the GPSVC.DLL and IESHIMS.DLL to, but I also missing a DCOMP.DLL. I have still no Ideo how to fix it (learning to work with dependency walker for two days now). What I see is, that the linked QT5CORE.DLL has not the right Link Checksum (should be 0x00423D4A but is 0x00419Da7 or other way round, not sure). GPSVC.DLL and IESHIMS.DLL (and GPSVS.DLL) are both needed by the QT5CORE.DLL, so I guess this is the way to go.
Would be nice if you could post your checksum of QT5CORE.DLL, just for personal interest.
I guess I found the solution:
Certainly the missing IESHIMS.dll is not an issue: it has never been present on any of my machines. I assume the other is not either.
All of the Qt Creator version information is very nice but not useful when it comes to your application. What version of Qt was your application built with? What compiler and version was your application built with? Exactly what files have you deployed?
Hi Chris. I am using a fresh install of whatever version of Qt Creator that was. This is my build environment:
As you can see, I am using Qt 5.0.1 to build the project.
OK, so you have at least these files in your deployment:
and the following from under C:\Qt\Qt5.0.1\mingw47_32\bin
the following as required
The MingW runtime
Thanks for your reply, Chris. I have located all of the files you specified already. I am guessing you tested this loadout to see if it works? A couple questions arise for me...
Some of the files you specified are named differently. Is this expected? For example: platforms\windows.dll is actually plugins\platforms\qwindows.dll on my end.
Should I be putting them into the same folder setup in my deployment? For example: putting plugins\imageformats* into the same directory as my exe file? Or just imageformats*? Or just copying all the DLL files and pasting them into the same directory as my exe file?
And most importantly: I have used all possible methods of searching my computer and have NOT LOCATED the file MINGWM10.DLL inside the C:\Qt folder (my installation directory for Qt). Is this just wrong? Is my installation bugged? Should I really be checking another directory for this? (I have previously installed a version of mingw on my computer located at C:\mingw, but this is more than likely a different version than the one that my deployment of Qt is using...)
must likely this thread is dead but I'm having exactly the same behavior in a windows XP with qt5.1. I would like to ask SSJMetroid how he'd solved the problem.
I was able to fix the issue by providing ALL of the correct DLL files in all of the correct folder locations. Here is what my project directory looks like:
my fault was that I was adding qwindows.dll into th main folder instead of a subfolder platforms.
i followed all the steps mentioned as above but still i am getting the above error. please specify the solution for that.
thanks in advance
ssjmetroid can u tell me how u got the correct folder locations. im having the same problem
[quote author="poketmonister" date="1397336037"]ssjmetroid can u tell me how u got the correct folder locations. im having the same problem
[/quote]Hi poketmonister, the correct locations are shown at http://qt-project.org/wiki/Deploy_an_Application_on_Windows
thanks dude this had been bugging me for weeks....now it is done