[Qt-interest] DLL issues with latest 4.5 SDK
Sven Grunewaldt
strayer at olle-orks.org
Tue Mar 10 01:25:09 CET 2009
I guess he is looking for the DLLs in the bin Folder of QtCreator, which
is compiled with VS2008 (...i think, at least it installed the VS
runtime for me)
Am 10.03.2009 00:01, schrieb Denton Vis:
> Firstly, the Qt SDK does come with the debug dlls. Mine are in
> C:\Qt\2009.01\qt\bin
> and Qt Creator knows where to find them.
> The dependency on msvcr90.dll suggests something to do with Visual Studio
> (2008 maybe?).
> Did you download the commercial version of Qt or the open source version
> which is built with and uses MinGW?
>
>
> "Nathan Carter"<nathancarter5 at gmail.com> wrote in message
> news:10A4C380-D588-46F9-996C-E7FF89F92677 at gmail.com...
>
>> Dear list,
>>
>> I have been developing an app on Mac and Linux, and it's time for a
>> release, so I downloaded the latest Qt 4.5 SDK for Windows to build the
>> Win version. I've built software recently and successfully with
>> Qt4.4+MinGW on Windows, so I didn't expect the problems I found. But
>> this is my first time with Qt 4.5, so perhaps those are the differences
>> I'm experiencing. Here's what I did and what happened, including my
>> several questions.
>>
>> I started doing a debug build so that I could test before I release. The
>> resulting .EXE therefore expects QtCored4.dll, QtGuid4.dll, etc. (note
>> the d's). But the SDK doesn't come with those; it only has the
>> QtCore4.dll, QtGui4.dll, etc. (note the lack of d's).
>>
>> Question #1: Must I download the sources and build in debug mode to get
>> the debug DLLs, or is there an easier way to get them? (Google,
>> surprisingly, doesn't seem to have the answer for this one yet.)
>>
>> So anyway, I moved on to release mode, which is what I wanted to do
>> eventually anyway. The resulting .EXE therefore expects the DLLs without
>> the d's. But when I toss the .exe and all the necessary DLLs
>> (mingwm10.dll, QtCore4.dll, QtGui4.dll, QtWebkit4.dll, QtScript4.dll,
>> QtNetwork4.dll) into the same directory and double-click the .exe, I get
>> this error:
>>
>> The procedure entry point _Z17qt_message_output9QtMsgTypePKc could not be
>> located in the dynamic link library QtCore4.dll
>>
>> Google results suggest that my DLLs are too old or too new, and I should
>> get the right version. But of course the DLL came from the Qt \bin
>> directory of the recently-installed SDK, and the binary of my application
>> was just built with that very SDK.
>>
>> Question #2: So what's up with that?
>>
>> Lastly, using dependency walker, I can tell that my EXE is also depending
>> on the following files (which are new to me--old builds of similar
>> software on Qt4.4 did not need them) and dependency walker says it can't
>> find these files:
>> MSVCR90.DLL
>> MSJAVA.DLL
>> This suggests that even if I fix the Qt*.DLL issues, these new issues
>> will haunt me. The MSVCR90.DLL is an indirect dependency of my
>> application, like this (--> means "depends on"):
>>
>> my.EXE --> QtCore4.dll --> MSVCP90.DLL --> MSVCR90.DLL
>>
>> And yet, QtCore4.dll also depends *directly* on MSVCR90.DLL, and
>> dependency walker can find *that* file (the direct dependency) without a
>> problem (!).
>>
>> Question #3: Do .EXEs have references to DLLs by path name and not just
>> filename? If not, what explanation is there for two different
>> MSVCR90.DLLs, one findable and the other missing? And if they are
>> referenced by path, when did that change, and does it flummox my hopes of
>> just dumping all the DLLs in the same directory as the executable with my
>> installer one day?
>>
>> The dependency chain for MSJAVA.DLL is enormous (WS2_32.DLL -->
>> USER32.DLL --> WINSTA.DLL --> NETAPI32.DLL --> DNSAPI.DLL -->
>> IPHLPAPI.DLL --> MPRAPI.DLL --> SETUPAPI.DLL --> SHELL32.DLL -->
>> SHDOCVW.DLL --> MSHTML.DLL --> IMGUTIL.DLL --> MSJAVA.DLL) but my
>> question is:
>>
>> Question #4: Any clue why that DLL is missing, or why it's even needed?
>> (I do nothing with Java in my app.) Also, I think I've used WS2_32
>> before without needing MSJAVA.DLL, so did something recently change?
>>
>> Phew! Thank you to anyone who can shed any light on this headache!
>>
>> Nathan
>>
>
> _______________________________________________
> Qt-interest mailing list
> Qt-interest at trolltech.com
> http://lists.trolltech.com/mailman/listinfo/qt-interest
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20090310/8eb6408d/attachment.html
More information about the Qt-interest-old
mailing list