简体   繁体   中英

What dlls do i need to distribute my Qt application?

I built a Qt app that I'd like to distribute to a few people. On a computer with QtCreator installed, I can get it to run by placing a bunch of Qt dlls (I inserted the ones it complained about) inside the same folder as the executable. But if I uninstall Qt or try it on a computer without Qt, the executable does nothing. No error, just no window or process when I run it.

Here's what I've tried:

-put every dll from the qt folder with the executable. No effect.

-run it with dependency walker. I'm not entirely sure I'm using it right but, with Qt uninstalled and the necessary dlls with the executable, it doesn't give me any missing or invalid modules. Just a couple of red lines in the logger after profiling like:

GetProcAddress(0x75AC0000 [KERNEL32.DLL], "SetDefaultDllDirectories") called from "MSVCR110.DLL" at address 0x6AC0FD4F and returned NULL. Error: The specified procedure could not be found (127).

and

GetProcAddress(0x75AC0000 [KERNEL32.DLL], "GetCurrentPackageId") called from "MSVCR110.DLL" at address 0x6AC0FDFA and returned NULL. Error: The specified procedure could not be found (127).

Nothing related to qt that I can tell.

I'm testing on a virtual machine (trying to simulate a non-dev machine) with 32bit windows 7. MSVC redist 2010 and 2012 are installed. It's Qt 5.1.0 MSCV2012-32bit. And I have the same problems with the 64bit version (I haven't used dependency walker with the 64 bit version though).

Is there some step I'm missing?

I have found you need to add a sub directory with some of the plug in dlls found in the plugin subdirectory of the install folder (where you find the include and bin folder)

in particular the platforms subdirectory and the qminimale.dll and windows.dll in it are needed for a gui

edit: to be clear add a subdirectory platforms to the directory with the exe and add the qminimale.dll and windows.dll to it

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM