On Thu, 29 Nov 2001, Quentin wrote:
> Are there "builtin" wine implementations of common Windoze DLLs
(ntdll,
> kernal32, comdlg32, winsock etc) and if so, where do they reside? I am
> trying to get my own application to run using wine (without a recompile)
and
> it continues to ask me for common windows dlls. I would like to try to get
> my application running without having to copy over all of the relevant
> windows dlls as I am trying to get my app running without any actual
windows
> binaries.
>
> help me, I'm pulling my hair out!
> Quentin.
>
If your app is looking for system dll's with, say, CreateFile you have
to put a file there for it to find, in whatever unix directory you have
told wine is "System". Consider my expurgated .wine/config:
WINE REGISTRY Version 2
[Drive C]
"Path" = "/gp/windose"
"Type" = "hd"
"Label" = "/gp/windose"
"Filesystem" = "win95"
[wine]
"Windows" = "C:\\windows"
"System" = "C:\\windows\\system"
"Temp" = "e:"
"Path" = "C:\\windows;c:\\windows\\system;e:\\;c:\\Program
Files;j:\\lccpub\\bin"
"Profile" = "c:\\windows\\Profiles\\Administrator"
"GraphicsDriver" = "x11drv"
# <wineconf>
[DllOverrides]
"msvcrt" = "native, builtin, so"
"*" = "builtin, so, native"
[AppDefaults\\juno.exe\\DllOverrides]
"msvcrt" = "native"
"riched32" = "native"
[AppDefaults\\netscape.exe\\DllOverrides]
"msvcrt" = "native"
I could make a nice advapi32.dll this way:
touch /gp/windose/windows/system/advapi32.dll
When the app goes after a dll with LoadLibrary of GetFileVersion.. it
gets what the Wine administrator tells Wine it should use.
Notice the [DllOverrides].
Wine has a large collection of builtin dll's. Depending what --prefix
wine was configured with (default is /usr/local), builtin dlls are in
${prefix}/lib
and are named libkernel32.so, libntdll.so, and so on. Indeed Wine can
not use windows kernel, user, ntdll, or gdi. If you tell it to, the
best you can hope for is a nice clean crash. I recommend you use no
native windows dll's except msvcrt, unless your app insists. Mine won't
run without native riched32.dll.
Lawson
---oof---