未定义的信息命令:";goroutines“;

未定义的信息命令:";goroutines“;,go,gdb,Go,Gdb,我是刚来戈朗的。我正在调试我的go应用程序 当我尝试运行“信息goroutines”时,它抛出: Undefined info command: "goroutines". Try "help info 我在gdb配置中遗漏了什么?文章“”确实提到: (gdb) info goroutines 但仅在加载给定二进制文件的扩展脚本的上下文中 工具链使用它来扩展GDB,并使用一些命令来检查运行时代码的内部(例如goroutines)并漂亮地打印内置的map、slice和channel类型 如

我是刚来戈朗的。我正在调试我的go应用程序

当我尝试运行“信息goroutines”时,它抛出:

Undefined info command: "goroutines".  
Try "help info
我在gdb配置中遗漏了什么?

文章“”确实提到:

(gdb) info goroutines
但仅在加载给定二进制文件的扩展脚本的上下文中

工具链使用它来扩展GDB,并使用一些命令来检查运行时代码的内部(例如goroutines)并漂亮地打印内置的map、slice和channel类型

如果您想了解这是如何工作的,或者想扩展它,请查看Go source发行版。
它取决于链接器(
src/cmd/ld/dwarf.c
)确保在dwarf代码中描述的一些特殊魔法类型(
hash
)和变量(
runtime.m
runtime.g

如果您对调试信息的外观感兴趣,请运行“
objdump-w6.out
”并浏览.debug_*部分

因此,请确保在运行调试会话时激活了这些扩展。

在gdb会话中运行

source $GOROOT/src/runtime/runtime-gdb.py
其中$GOROOT是go-lives(请参见
go-env|grep-ROOT

您应该按照golang docs的建议使用