Deploying not possible anymore. Not dynamically, nor statically. Qt 5.0.2
-
Hi guys :-)
The last few days i tried to get our project deployed again. Until then i managed to find the right dll's to get it running on other systems than the developer-machine, which is good enough.
After i've changed a few things over the last weeks or so, i decided to deploy a new version for production use and stumbled upon an error message after i've started the program on another machine than the development machine.
!http://666kb.com/i/cdgu5ouuxmnjucv44.png(error message)!
"This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information"this clearly was some missing .dll for me, so i restarted my (previously) successful approach to copy every qt-dll i could find into the program folder. (i also copied some plugins like the one for the windows platform in the subfolder(s))
But nothing of this didn't work. I tried it on a few other non-developer machines, but still the same error message.
I started to look with tools like procmon to find out which files the .exe tries to access... but no success here, everything seemed more or less okay.
I also recognized the title bar of the error message: "Microsoft Visual C++ Runtime Library".
As far as i understand it, these libraries shouldn't be used when i compile it with mingw...
(which is done, because i also started the compile process manually to check the (success) of the transition to a static build.I used Qt 5.0.1, mingw32 on win7 64bit. (Yesterday i tried everything with 5.0.2 too. Even on a second, freshly installed machine)
Any guesses how i can get my application running again?
(I want to say it again: It works perfect on my developer machine) -
See "this thread":https://qt-project.org/forums/viewthread/27056/#122606.
-
hi sierdzio.
unfortunately none of these solutions worked for me.as said, i tried this platforms-thingy already (also with different folder structures etc..)
visual studio c++ redistributable is already installed in the newest version (2012.1).
(but i should not need them, as far as i understand it right)do i need an older version for Qt5?
-
Hi,
I know it might sound silly but did you check debug vs release build ?
-
Do you have all of these dll's?
YOURAPP
D3DCompiler_43.dll
icudt49.dll
icuin49.dll
icuuc49.dll
libEGL.dll
libgcc_s_sjlj-1.dll
libGLESv2.dll
libstdc++-6.dll
libwinpthread-1.dll
Qt5Core.dll
Qt5Gui.dll
Qt5Widgets.dllplatforms/qwindows.dll
-
Hi everyone,
the response time of you guys is amazing. thank you! :-)
i also understand that such problems can occur because of tiny little things someone misses, and it's perfectly fine to point such things out.
i do have checked if it is a release-build (you can also easily recognize it by the filesize of the resulting .exe too ;-))
and yes, i do have the libEGL.dll in my folder, and it is accessed without errors (according to procmon)
the unusual thing is, that it already worked at my last build
the only thing i changed in my code (beside some new functionality and algorithms) is:
- a progress-bar (the first time in this project)
but i do already include Qt5Widgets.dll
(i will try to remove it again, but i don't think this will change the behaviour)
very mysterious... - a progress-bar (the first time in this project)
-
By the way, i also tried a different approach to a solution the last few days:
==== build it statically ====(which also wasn't very successful)
Changes i've made to try to get static builds running:
- recompile it with:
@mingw32-make confclean
C:\Qt\Qt5.0.2>5.0.2\Src\qtbase\configure -debug-and-release -opensource -c++11 -static -no-opengl -nomake examples -nomake tests
mingw32-make@
... which completed without errors after tweaking the commandline parameters :-)
then: adding CONFIG += static to the .pro-file
then i get different results on different projects.
i compiled the "analogclock"-sample on the commandline and got a static built and linked .exe (at least on one of the development computers i tried this)
at my personal development computer i can build analogclock.exe statically,
but my own project still puts out dynamic .exe files, even after i tried everything manually at the commandline.
(with mingw32-make clean, qmake (with parameters) and mingw32-make.)qmake always writes makefiles which are different from the ones which should be used to link it dynamically, and has some static-keywords on different places in it. which is good, i think.
but then the final mingw32-make still outputs small dynamic linked .exe's.
Any clues on that? Did i miss something?
- recompile it with:
-
I also got some trouble with Qt5.02 when i handle the code and make a rebuild under it though i clean it...
I don't know why, but i got some specific error at the end on the main file and could'nt resolve it.
Since, i clean my PC install of lot of things like Mingw stand alone install and rebuild a Qt5.01 witch is looking Mingw tools in is one part, and that look nice for now...
Hope you can solve it !