在Ubuntu上调试Golang程序,常用工具为Delve(官方推荐)和GDB,以下是具体步骤:
go install github.com/go-delve/delve/cmd/dlv@latest
确保$GOPATH/bin
在$PATH
中,可通过dlv version
验证安装。
go build -gcflags "all=-N -l" -o myprogram main.go
-N -l
关闭优化和内联,便于调试。
dlv exec ./myprogram
或直接调试文件:
dlv debug main.go
break main.go:10
(在指定行设置断点)continue
(运行至下一个断点)next
(不进入函数)/ step
(进入函数)print variable_name
quit
sudo apt install gdb
go build -gcflags "all=-N -l" -o myprogram main.go
gdb ./myprogram
break main.go:10
或 b main.main
run
next
(不进入函数)/ step
(进入函数)print variable_name
backtrace
或 bt
quit
launch.json
)。pprof
工具(需在代码中导入net/http/pprof
)。-gcflags
生成调试符号,且部分Go特性支持有限。根据需求选择工具,Delve更适合Go项目,GDB则适用于需要通用调试的场景。