ljymoonlight

导航

golang gdb调试

编译具有可调试的执行程序需要注意下面命令。

go build 编译时需要增加 -gcflags=all="-N -l" 指令来关闭内联优化,方便接下来的调试。

若是 MacOS,在 go build 编译时需要增加 -ldflags='-compressdwarf=false' 指令。

若不禁止,则会出现 No symbol table is loaded. Use the "file" command. 的错误。
Go 编译默认为了减少二进制大小会默认压缩 DWARF 调试信息,但这会影响 gdb 的调试,因此需要将其关闭。

posted on 2021-07-29 23:35  ljymoonlight  阅读(164)  评论(0编辑  收藏  举报