阅读量:121
在Ubuntu中调试Golang程序,常用工具为Delve(官方推荐)和GDB,以下是具体步骤:
一、安装调试工具
-
Delve(推荐)
go install github.com/go-delve/delve/cmd/dlv@latest确保
$GOPATH/bin在$PATH中,可直接运行dlv命令。 -
GDB(需配合插件)
sudo apt install gdb安装后需通过
-gcflags "all=-N -l"编译程序以保留调试信息。
二、使用Delve调试
-
编译程序
go build -gcflags "all=-N -l" -o myprogram main.go(
-N禁用优化,-l禁用内联,方便调试)。 -
启动调试会话
dlv debug myprogram或附加到已运行进程:
dlv attach。 -
常用命令
- 设置断点:
break main.go:10(在指定行或函数设置)。 - 单步执行:
next(跳过函数)/step(进入函数)。 - 查看变量:
print variable_name。 - 继续执行:
continue。 - 退出:
quit。
- 设置断点:
三、使用GDB调试
-
编译程序
go build -gcflags "all=-N -l" -o myprogram main.go ```。 -
启动GDB
gdb ./myprogram -
常用命令
- 设置断点:
break main.go:10。 - 单步执行:
next/step。 - 查看变量:
print variable_name。 - 查看堆栈:
backtrace。
- 设置断点:
四、辅助工具与技巧
- 日志记录:在代码中使用
log包输出关键信息,辅助定位问题。 - 性能分析:使用
runtime/pprof生成CPU/内存分析报告,定位性能瓶颈。 - IDE集成:推荐使用VS Code(安装Go插件)或GoLand,支持图形化调试。