Subject: Re: Problems with wine
To: port-i386@netbsd.org <port-i386@netbsd.org>
From: David Laight <david@l8s.co.uk>
List: port-i386
Date: 02/05/2002 13:22:42
David Laight wrote:

investigating my own problems :-)

> This looks like a cascade of errors....

Except it isn't!  Adding some extra trace to wine gives (somewhat
hacked):

0807f000:trace:module:load_library trying to load ntdll.dll
0807f000:trace:module:load_library loaded ntdll.dll
0807f000:trace:module:load_library trying to load main.exe
0807f000:trace:module:load_library trying to load wsock32.dll
0807f000:trace:module:load_library trying to load gdi32.dll
0807f000:trace:module:load_library trying to load advapi32.dll
0807f000:err:module:PE_fixup_imports Module (file) kernel32.dll
	 (which is needed by advapi32.dll) not found
0807f000:err:module:load_library can't load advapi32.dll
0807f000:err:module:load_library can't load gdi32.dll
0807f000:trace:module:load_library trying to load kernel32.dll
0807f000:trace:module:load_library loaded kernel32.dll
0807f000:trace:module:load_library trying to load user32.dll
(fails because gdi32 not loaded - probably remembered the failure)
0807f000:err:module:load_library can't load user32.dll
0807f000:trace:module:load_library trying to load ws2_32.dll
(fails because user32 not loaded - probably remembered the failure)
0807f000:err:module:load_library can't load ws2_32.dll
0807f000:err:module:load_library can't load wsock32.dll

The first error seems to be the failure to 'find' kernel32.dll when
requested by advapi32.dll.  However kernel32.dll is found later when
(probably) requested by wsock32.dll.  My guess is that the error is
caused by advapi32.dll trying to load a library that is already on the
'to be loaded' list.  It seems to be errored instead of being loaded.

I'd check the dependency info, but I don't know the NetBSD command that
is equivalent to the solaris 'dump -Lv <file>' let alone the one for
win98 dlls under NetBsd.

	David