[Mono-list] Adding Solaris/amd64 support

Andreas Färber andreas.faerber at web.de
Tue Mar 6 18:58:44 EST 2007


Miguel,

> Replace the g_assert in the line with the error with a call to
> "G_BREKAPOINT".
>
> Then run with gdb:
>
> gdb mono
> (gdb) run program.exe
> wait for breakpoint
> (gdb) x/20i address
>
> Address is whatever address the method is trying to decode, you will
> have to look that one up on the source.

I managed to compile gdb 64-bit:

-bash-3.00$ gdb mono/mini/mono
GNU gdb 6.6
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and  
you are
welcome to change it and/or distribute copies of it under certain  
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for  
details.
This GDB was configured as "i386-pc-solaris2.10"...
(gdb) run ../../Documents/Test.exe
Starting program: /export/home/andreas/Mono/mono/mono/mini/mono ../../ 
Documents/Test.exe
warning: Temporarily disabling breakpoints for unloaded shared  
library "/usr/lib/amd64/ld.so.1"
warning: Lowest section in /lib/amd64/libpthread.so.1 is .dynamic at  
00000000000000b0
[New LWP 1]
[New LWP 2]
TYPE: 1

Program received signal SIGTRAP, Trace/breakpoint trap.
amd64_patch (_field_data=0xfffffd7ffe3f077b "?@@\221?I\213??",  
her=0x4e53c4)
     at mini-amd64.c:182
182                     x86_patch (code, (unsigned char*)target);
(gdb)


Now how/where do I find the address? Do I need to add printfs some  
place? (will look into it tomorrow)

(As a possible alternative/complement to gdb I found mdb installed.)

Andreas


More information about the Mono-list mailing list