How can I define the breakpoint-commands in my gdbinit file

Luo Yi firingme@gmail.com
Thu Dec 14 02:01:00 GMT 2006


luoyi@slack$ cat ~/.gdbinit
define mybp
        b main
        commands
        silent
        printf "eax = %x\n", $eax
        end
end
luoyi@slack$ gdb a.out
GNU gdb 6.5
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
"i486-slackware-linux".../home/luoyi/.gdbinit:7: Error in sourced
command file:
This command cannot be used at the top level.
Using host libthread_db library "/lib/tls/libthread_db.so.1".

(gdb) mybp
Breakpoint 1 at 0x8048440
Quit    <<------------------ gdb stop here! after Ctrl+C, it go on with this
(gdb)

2006/12/14, Daniel Jacobowitz <drow@false.org>:
> On Thu, Dec 14, 2006 at 09:51:19AM +0800, Luo Yi wrote:
> > How can I define the breakpoint-commands in my gdbinit file ?
> >
> > define b1
> > b *0x805d3bf
> > commands
> > silent
> > printf "ne, eax = %x\n", $eax
> > end    <<< ------------
> > end
> >
> > the commands need a end instruction which can't appear in the middle
> > of the gdbinit file.
>
> It should work fine.  Are you using the latest GDB?
> --
> Daniel Jacobowitz
> CodeSourcery
>



More information about the Gdb mailing list