MSVC build of kdelibs fails

Christian Ehrlicher Ch.Ehrlicher at gmx.de
Mon Dec 24 11:38:25 CET 2007


Andreas Pakulat schrieb:
> On 23.12.07 18:13:52, Andreas Pakulat wrote:
>> On 23.12.07 17:46:19, Andreas Pakulat wrote:
>>> On 23.12.07 16:14:08, Christian Ehrlicher wrote:
>>>> If this does not help you'l have no other chance than build qdbuscpp2xml
>>>> in debug mode and do some debugging.
>>> I guess so...
>> Hmm, I can't debug, because the app doesn't load at all. The problem
>> seems to be with dbus-1d.dll from the dbus-package. MSVC tells me the
>> following:
>>
>> LDR: LdrpWalkImportDescriptor() failed to probe
>> D:\andreas\kde4\bin\dbus-1d.dll for its manifest, ntstatus 0xc0150002
>>
>> So it seems that when emerge builds Qt with debug_and_release a debug
>> qdbuscpp2xml gets installed into the bin/ folder and thus dbus-1d.dll is
>> used.
>>
>> If I make sure qdbuscpp2xml is built in release mode everything works
>> fine.
> 
> I restarted a fresh build with emerge about 3.5 hours ago and coming
> back to the system qdbuscpp2xml still fails to load.
> 
> Checked with depends and indeed it links to dbus-1d.dll (indirectly via
> QtDBusd4.dll), and dbus-1d.dll one is said to be having errors.
> 
> I get the same error when opening just QtDbusd4.dll.
> 
> Another thing is: When opening the non-debug-QtDBus lib I have a missing
> MSVCR80.dll, which is "pulled in" by QtXml.dll. That library shows
> strange dependencies onto dll's in
> C:\windows\winsxs\x86_microsoft.vc80.crt_<hash>_8.0...._x-www_<hash>\
> i.e. it links against the MSVCP80.dll in that dir and that one wants the
> MSVCR80.dll (which is in the same dir). Is that normal? 
> 
> Anyway, putting the msvcr80.dll into Windows\system32 or directly into
> the kde4\bin doesn't help either.
> 
> And it gets even stranger, the qdbusxml2cpp program also links against
> qtdbus4.dll, but that one only has the warning about an unresolved
> import. And when opening qdbusxml2cpp it also finds the msvcr80.dll in
> that dir in windows\winsxs.
> 
> Another difference between the 2 tools is that for qdbuscpp2xml there's
> no manifest file for the release version, while there is one for the
> debug version. Manually building the release version of qdbuscpp2xml
> does create the .manifest file in the obj-output folder and the
> resulting binary doesn't have any problems when opening in depends. So
> it seems that there's still some kind of bug inside Qt4.3.3 for building
> qdbuscpp2xml.exe, as its using the debug-binary instead of the release
> one, even though the releease rule is the last one executed according to
> the makefile.
> 
> How do I debug this further?
> 
Use the binary releases from Ralfs server.


Christian



More information about the Kde-windows mailing list