Debuging Wine
Jarmo
jarmonik at mbnet.fi
Wed Jun 11 23:50:27 CDT 2003
Hi,
I am trying to have Orbiter running under winex in Linux. I have plenty of
experience in programming but I haven't used much debuggers. I would have
few questions.
What is the difference between dll load methods "builtin" and "so" when
debugging witch one should be used ?
When using "so" mode this error is generated. I added "_ftol" in libmsvcrt.so
and that error is no longer generated. Is that right thing to do ?
When using "builtin" mode these errors won't appear. But it will crash the
same way.
----------------------------------------------------------------------------------------------------
fixme:win32:ELF_FindExportedFunction function ftol not found:
/usr/local/lib/libwine.so: undefined symbol: ftol
err:win32:PE_fixup_imports No implementation for MSVCRT.dll.237(_ftol)
imported from C:\Orbit_new\Modules\Luna.dll, setting to 0xdeadbeef
fixme:win32:ELF_FindExportedFunction function ??3 at YAXPAX@Z not found:
/usr/local/lib/libwine.so: undefined symbol: ??3
err:win32:PE_fixup_imports No implementation for MSVCRT.dll.16(??3 at YAXPAX@Z)
imported from C:\Orbit_new\Modules\Luna.dll, setting to 0xdeadbeef
fixme:win32:ELF_FindExportedFunction function ?terminate@@YAXXZ not found:
/usr/local/lib/libwine.so: undefined symbol: ?terminate
err:win32:PE_fixup_imports No implementation for
MSVCRT.dll.46(?terminate@@YAXXZ) imported from C:\Orbit_new\Modules\Luna.dll,
setting to 0xdeadbeef
---------------------------------------------------------------------------------------------------
What are these ?
No debug information in 32bit DLL 'DDRAW.DLL' (0x406c8000)
*** Invalid address 0x40011f80 (_end+0x478)
from msvcrt.spec:
@ forward -noimport _ftol ntdll._ftol
@ cdecl ?terminate@@YAXXZ() MSVCRT_terminate
This is the final crash.
------------------------------------------------------------------------------------------------
First chance exception: page fault on read access to 0xdead001e in 32-bit code
(0xdead001e).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:2007 GS:0007
EIP:dead001e ESP:406a287c EBP:004b3b88 EFLAGS:00210202( R- 00 I - - 1 )
EAX:406f08a0 EBX:403a62d4 ECX:433c0e10 EDX:433c0e00
ESI:403a62d4 EDI:00000000
Stack dump:
0x406a287c (MSVCRT.DLL.193+0x3f48ec): 004513ca 403a62d4 433c0e00 433c0e10
0x406a288c (MSVCRT.DLL.193+0x3f48fc): 00000001 00000000 433c0e20 406cbdf0
0x406a289c (MSVCRT.DLL.193+0x3f490c): 403a62d4 433fdbc0 406cb900 00000000
0x406a28ac (MSVCRT.DLL.193+0x3f491c): 00000000 00000000 406cb900 00000000
0x406a28bc (MSVCRT.DLL.193+0x3f492c): 00000000 433fdbc0 0047017a 00470185
0x406a28cc (MSVCRT.DLL.193+0x3f493c): 406f08a0 40738820 ff000000 406a2a28
0x406a28dc (MSVCRT.DLL.193+0x3f494c):
0400: sel=2007 base=4011b460 limit=00000000 32-bit rw-
Backtrace:
=>0 0xdead001e (MSVCRT.DLL._winver+0x99fe36ce) (ebp=004b3b88)
1 0x433c0de0 (MSACM32.DLL.acmStreamUnprepareHeader+0x33d190) (ebp=00000001)
0xdead001e (MSVCRT.DLL._winver+0x99fe36ce): *** Invalid address 0xdead001e
(MSVCRT.DLL._winver+0x99fe36ce)
-- no code --
----------------------------------------------------------------------------------------------------
I know very little about this. It seems that processor is trying to execute
code in 0xdead001e. That would indicate a missing function. If that what it
is. What is the missing function ? Where it shoud be ? What is calling it ?
What is "1e" in 0xdead001e
I dumped MSACM32.DLL and it does not inport any MSVCRT.DLL functions.
acmStreamUnprepareHeader disassembly doesn't show anything weard either.
Regards,
Jarmo
More information about the wine-devel
mailing list