Golang gdb: Difference between revisions

From wikinotes
No edit summary
Line 39: Line 39:
</syntaxhighlight>
</syntaxhighlight>
</blockquote><!-- gc -->
</blockquote><!-- gc -->
= gcc =
<blockquote>
</blockquote><!-- gcc -->
= clang =
<blockquote>
</blockquote><!-- clang -->

Revision as of 16:24, 26 June 2022

Instructions for debugging go with gdb.
Instructions vary by compiler

Documentation

go blog https://go.dev/doc/gdb

gc

If compiled with gc (default).

go build -gcflags "-N -l"  # build, disabling optimizations
gdb executable
#> run                    # begin running executable

Then it's regular gdb commands

# configure gdb for your execution
break file.go:123  # set breakpoint in file.go, line:123
layout src        # split-screen, displaying location in code

# begin running code
run

# at breakpoints, inspect your code
bt                 # show backtrace
p yourVar          # print a variable
l
s                  # step into method
n                  # next line
exit               # quit

gcc

clang