aboutsummaryrefslogtreecommitdiffhomepage
path: root/gdb.txt
blob: 47ecdce4cd79331077a325f278f7283f6faa9f9c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
.:: GDB ::.
--------------------------------------------------------------------------------

# toc
------
  |gdb|
    |opts|
    |prompt|
    |user_commands|
    |hooks|

# gdb(1)                                                                   *gdb*
=========
  gdb [opts] [exe [coredump | pid]]
  gdb [opts] --args exe <exe-args>
    opts:                                                                 *opts*
      -p <pid>        attach to pid
      -x <file>       execute script <file> before prompt
      -ex <cmd>       execute command <cmd> before prompt
      --tty <tty>     set I/O tty for debugee (see *prompt* for details)


    prompt:                                                             *prompt*
      tty <tty>             set <tty> as tty for debugee.  make sure nobody
                            reads from target tty, easiest is to spawn a shell
                            and run
                            > while true; do sleep 1024; done

      set follow-fork-mode <child | parent>
                            specify which process to follow on fork(2)

      sharedlibrary [regex]
                            load symbols of shared lib, if regex then only symbols
                            for matching libs

      break <sym> thread <tnum>
                            set a breakpoint only on a specific thread

      rbreak <regex>        set breakpoints based on symbols matching regex
                            <regex> is internally expanded to .*<regex>.*
                            so 'rbreak foo' matches barfoobar()

      command [bp_list]     define commands to run after breakpoint hit if
                            bp_list not supplied attach command to last
                            created bp

                            bp_list: space separates list, eg 'command 2 5-8'
                            to run command for bp 2,5,6,7,8

      info functions [regex]
                            list functions according to regex, if regex empty,
                            list all

      info variables [regex]
                            list variables according to regex, if regex empty,
                            list all


    user commands:                                               *user_commands*
      define <cmd>                  defines user command <cmd> to be run
        # cmds                      in prompt or script
      end

      document <cmd>                define documentation for cmd <cmd>
        # docu
      end

      help user-defined             list user defined commands
      help <cmd>                    list documentation for command <cmd>


    hooks:                                                               *hooks*
      define hook-<cmd>             run commands defined in hook before
        # cmds                      executing <cmd>
      end

      define hookpost-<cmd>         run commands defined in hookpost after
        # cmds                      executing <cmd>
      end

--------------------------------------------------------------------------------
vim:sts=2:et:tw=80:cc=80:fo+=t:ft=help