go程序的调试方法

 编程  golang 

作者: 李佶澳   转载保留:原文地址   更新时间:2017/08/28 15:09:13

gdb

Debugging Go Code with GDB介绍了如何使用gdb调试go开发的程序。

gdb不能完全的理解golang程序, 只能够用来解决部分问题,如果程序是并发的,gdb能够发挥的作用就更小了。

使用golang的gc工具链编译的程序默认包含DWARF3调试信息,gdb能够使用这些信息去调试一个运行的进程或者core dump。

如果要去掉DWARF3信息:

go build -ldflags "-w" prog.go

gc会默认对inline函数等进行优化,从而增加了使用gdb调试的困难,可以在编译时禁止这些优化:

go build -gcflags "-N -l"  prog.go

参考

  1. Debugging Go Code with GDB

本文原创首发于网站:www.lijiaocn.com

 编程  golang 

QQ交流群

区块链实践互助QQ群:576555864

Kubernetes实践互助QQ群:947371129

Prometheus实践互助QQ群:952461804

Kong/Envoy实践互助QQ群:952503851

Ansible实践互助QQ群:955105412

Copyright @2011-2019 All rights reserved. 转载请添加原文连接,合作请加微信lijiaocn或者发送邮件: [email protected],备注网站合作 友情链接: lijiaocn github.com