Should winedbg be able to load symbols up for non-wine libraries? After the export WINELOADER idea I've got wine symbols but I'm still trying to debug a bizzare crash in winejack where I get:
~/c$ wine sndrec32.exe Could not stat /mnt/fd0 (No such file or directory), ignoring drive A: Segmentation fault
and when running under winedbg:
*** Invalid address 0x40017f40 (_end+0x2ff03f40) Loaded debug information from ELF '/usr/local/lib/wine/ midimap.drv.so' (0x41090000) In 32-bit mode. Wine-dbg>cont Stopped on breakpoint 1 at 0x0100d32e (sndrec32.exe.EntryPoint in sndrec32.exe) Wine-dbg>cont Invalid address for breakpoint 1, disabling it Invalid address for breakpoint 2, disabling it Process of pid=0000000a has terminated Wine-dbg>
From single stepping I've found the function where the segfault appears to
occur but its inside of jack_activate() in libjack.so.0 but symbols for this library don't appear to be loaded:
*** Invalid address 0x40017f40 (_end+0x2ff03f40) No debug information in ELF '/usr/local/lib/libjack.so.0' (0x40f56000) No debug information in ELF '/lib/tls/librt.so.1' (0x40f62000)
nm libjack.so.0 lists a bunch of symbols and I'm able to set a breakpoint on jack_activate() using gdb on a native linux app so it looks like debug information is built into libjack.so.0.
Thanks, Chris
Hello,
I don't have any answer to your question, but I do know "why" wine is crashing. It is indeed crashing inside of jack_activate() in libjack. If you look in that function, the first thing to does is allocate a 1MB array (which it never uses). I am not really sure why they do this -- there is a comment in the file that half explains it. In any case, if you make it a 0.5 meg array, then it should work okay.
Hopefully someone can think of a better solution than modifying the libjack library. I am not really sure why it crashes in the first place.
You will likely find that the current winejack driver is not that reliable. I have fixed a few major bugs in the winejack waveout code, and am about 95% done implementing wave in. I am going on vacation on thursday, so I won't be submitting a formal patch until early next year. If you want a preliminary copy I would be glad to send you a patch. It should be reliable, its just missing stereo input (currently only supports mono) and has some extra debug code, etc.
Jeremy Shaw.
On Dec 16, 2003 7:53 PM, Chris Morgan cmorgan@alum.wpi.edu wrote:
Should winedbg be able to load symbols up for non-wine libraries? After the export WINELOADER idea I've got wine symbols but I'm still trying to debug a bizzare crash in winejack where I get:
~/c$ wine sndrec32.exe Could not stat /mnt/fd0 (No such file or directory), ignoring drive A: Segmentation fault
and when running under winedbg:
*** Invalid address 0x40017f40 (_end+0x2ff03f40) Loaded debug information from ELF '/usr/local/lib/wine/ midimap.drv.so' (0x41090000) In 32-bit mode. Wine-dbg>cont Stopped on breakpoint 1 at 0x0100d32e (sndrec32.exe.EntryPoint in sndrec32.exe) Wine-dbg>cont Invalid address for breakpoint 1, disabling it Invalid address for breakpoint 2, disabling it Process of pid=0000000a has terminated Wine-dbg>
From single stepping I've found the function where the segfault appears to occur but its inside of jack_activate() in libjack.so.0 but symbols for this library don't appear to be loaded:
*** Invalid address 0x40017f40 (_end+0x2ff03f40) No debug information in ELF '/usr/local/lib/libjack.so.0' (0x40f56000) No debug information in ELF '/lib/tls/librt.so.1' (0x40f62000)
nm libjack.so.0 lists a bunch of symbols and I'm able to set a breakpoint on jack_activate() using gdb on a native linux app so it looks like debug information is built into libjack.so.0.
Thanks, Chris
You could perhaps send it to the list to have some feedback before posting it to wine-patches...
You will likely find that the current winejack driver is not that reliable. I have fixed a few major bugs in the winejack waveout code, and am about 95% done implementing wave in. I am going on vacation on thursday, so I won't be submitting a formal patch until early next year. If you want a preliminary copy I would be glad to send you a patch. It should be reliable, its just missing stereo input (currently only supports mono) and has some extra debug code, etc.
Jeremy Shaw.
===== Sylvain Petreolle (spetreolle_at_users_dot_sourceforge_dot_net) ICQ #170597259 Say NO to software patents Dites NON aux brevets logiciels
"What if tomorrow the War could be over ?" Morpheus, in "Reloaded".
_________________________________________________________________ Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en français ! Yahoo! Mail : http://fr.mail.yahoo.com
Chris Morgan wrote:
Should winedbg be able to load symbols up for non-wine libraries? After the export WINELOADER idea I've got wine symbols but I'm still trying to debug a bizzare crash in winejack where I get:
it should it seems more to me that the wine exec that winedbg is looking at is not the one which is actually loaded It still seems that WINELOADER does't actually point to the right wine exec
A+
I did export WINELOADER=`which wine` and it set it to /usr/local/bin/wine I'll check my machine to ensure that I don't have multiple copies of the wine or winedbg binaries.
Note that I am getting debug information from wine dlls now, I do not if I don't set the WINELOADER environment variable. Is there another to be set for winedbg?
Chris
On Wed, 17 Dec 2003 20:36:52 +0100 Eric Pouech pouech-eric@wanadoo.fr wrote:
Chris Morgan wrote:
Should winedbg be able to load symbols up for non-wine libraries? After the export WINELOADER idea I've got wine symbols but I'm still trying to debug a bizzare crash in winejack where I get:
it should it seems more to me that the wine exec that winedbg is looking at is not the one which is actually loaded It still seems that WINELOADER does't actually point to the right wine exec
A+
-- Eric Pouech
Chris Morgan wrote:
I did export WINELOADER=`which wine` and it set it to /usr/local/bin/wine I'll check my machine to ensure that I don't have multiple copies of the wine or winedbg binaries.
Note that I am getting debug information from wine dlls now, I do not if I don't set the WINELOADER environment variable. Is there another to be set for winedbg?
No that's the only one (except for MS specific debug info, which uses another env variable, but that's only needed for some native DLLs from MS VC) A+