PDA

View Full Version : Qt 4.7: why is QtHelpd4.dll required?! (Windows deployment)



agarny
7th January 2011, 18:42
Hi, I am using CMake to build and pack (with CPack) my Qt application. I am currently looking into updating my packing procedure for Windows. Now, my application uses QtHelp, so I clearly need to deploy it (as confirmed by Dependency Walker). However, though I am building a release version of my application, QtHelpd4.dll is required (and, as a result, also the debug version of a few other Qt libraries) while a release version of the other Qt libraries is required. Incidentally, this results in QtCore4.dll and QtCored4.dll being both required (the second one as a result of QtHelpd4.dll being required).

Now, what I am wondering is why on earth is the debug version of QtHelp required when the release version of everything else is needed?

Cheers, Alan.

wysota
7th January 2011, 23:36
Dependency walker should show you what depends on the debug dll. It's probably not really your main application as release and debug versions of Qt can't be used in the same executable due to name clashes.

agarny
8th January 2011, 01:55
Ok, now, this is very weird! I have just built my project at home and Dependency Walker tells me that it depends on QtHelp4.dll and not QtHelpd4.dll as at work, and indeed the package I build works fine on a clean Windows virtual machine while that of work doesn't work unless I deploy some debug DLLs (incidentally, whether it should be done or not, release and debug DLLs live well together). Anyway, I guess I will have to investigate what's going on with my work computer...

Added after 1 28 minutes:

Interestingly enough, I have just compared the Qt / Qt Creator directory of my computer at work against the one I have at home, and some files have a different size and timestamp, even though they are both the 2010.05 version. Hmm... me thinks that I might want to reinstall my work copy of Qt / Qt Creator on Monday...