Weird error after deploying Qt5.12.5 App, not present when using Qt5.12.2
-
I get the strangest runtime error after deploying an application:
I am building an app using Qt5.12.5. I built the app and tested in Qt Creator. Then I used NSIS to build an installer. Then installed the app. When running the app I get the error in the image.Here is the strange part. Keeping everything else the same I build the app using Qt 5.12.2. Build the installer, etc. I run the installed app and it runs fine.
The same app runs fine under Linux, but we are not deploying. So are only running it from Qt Creator, which does not seem to have the problem.
I am using this command in qmake to determine what is deployed with my app:
deploy_script.path = $$INSTALL_BASE deploy_script.extra = $$QTDIR/bin/windeployqt --release --qmldir qml/ $$INSTALL_BASE INSTALLS += deploy_script
So, it works in 5.12.2, but fails in 5.12.5
-
I just tried with Qt 5.12.4. The app refuses to start (no error, even on command line), but runs fine from Qt Creator. This is kind of disturbing. Is windeployqt not getting everything?
Edit:
Oh wow, when running a 5.12.4 version it is backgrounding my app. It runs, but never shows up on screen. I tried it on another Windows 10 machine and the same issue. This has got to be a deployment issue of some sort. -
Okay people. Know your shell. I was running the 5.12.2 shell while running our deployment make command for something compiled under 5.12.5. When I realized this and used the correct 5.12.5 shell to run my make command the deployed Qt app worked just fine. I can only guess that it was grabbing the wrong "something" and putting in my deployment directory. Probably a dll or wrong qml file.
-
Okay people. Know your shell. I was running the 5.12.2 shell while running our deployment make command for something compiled under 5.12.5. When I realized this and used the correct 5.12.5 shell to run my make command the deployed Qt app worked just fine. I can only guess that it was grabbing the wrong "something" and putting in my deployment directory. Probably a dll or wrong qml file.
@fcarney said in Weird error after deploying Qt5.12.5 App, not present when using Qt5.12.2:
I can only guess that it was grabbing the wrong "something" and putting in my deployment directory. Probably a dll or wrong qml file.
Your original screenshot shows that the program is looking for a private C++ class/function.
The private function existed in one version of the Qt DLLs but not the other version.