在 Debian 上调试 Golang 程序,常见方式有以下几种,从最常用到进阶逐步介绍。
sudo apt update
sudo apt install golang-go git -y
go install github.com/go-delve/delve/cmd/dlv@latest
确保 ~/go/bin 在 PATH 中:
export PATH=$PATH:~/go/bin
验证:
dlv version
dlv debug
dlv debug ./main.go
dlv exec ./your-program
dlv attach <pid>
| 命令 | 说明 |
|---|---|
break main.main |
设置断点 |
break main.go:20 |
在指定行断点 |
continue / c |
继续执行 |
next / n |
下一行 |
step / s |
进入函数 |
print x |
打印变量 |
locals |
当前局部变量 |
stack |
调用栈 |
quit |
退出 |
sudo apt install code
VS Code 插件:
F5 启动调试⚠️ Go 对 GDB 支持有限,尤其是 goroutine
sudo apt install gdb
gdb ./your-program
常用:
break main.main
run
bt
log.Println("debug info")
import _ "net/http/pprof"
go tool pprof http://localhost:6060/debug/pprof/profile
dlv: command not foundexport PATH=$PATH:~/go/bin
sudo dlv attach <pid>
dlv --headless --listen=:2345
✅ 开发阶段:Delve / VS Code
✅ 线上问题:pprof + 日志
❌ 不推荐:GDB
如果你愿意,可以告诉我:
我可以给你更具体的配置示例。