In my experience, the cgdb [1] wrapper makes gdb a viable option, by providing what I think is the sorely missing piece in vanilla gdb: a window continuously showing the code context.<p>It also uses vim-like bindings for going into &quot;insert&quot; mode (&quot;i&quot;), versus escaping out into code context navigation mode (&quot;ESC&quot;).<p>I made a short 4 minute tutorial on how to use gdb&#x2F;cgdb for debugging Golang, here:<p><a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=OKLR6rrsBmI" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=OKLR6rrsBmI</a><p>[1] <a href="https:&#x2F;&#x2F;cgdb.github.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;cgdb.github.io&#x2F;</a>