Solaris上的GDB:/ proc / 168:对于定义的数据类型,值太大

时间:2011-10-28 09:28:15

标签: c gdb solaris

我在Solaris SPARC 8上运行了一个C应用程序,它处理来自Websphere MQ的消息并将它们发送到目标应用程序。

应用程序在Solaris 10和Linux 100%上运行不变....没有问题......

在这个特定的盒子上,它似乎在4000条消息或更多消息中运行,并且在AD HOC的基础上它只是“挂起”......

所以我们安装了GDB,因为我希望附加到正在运行的进程,所以当我运行类似的东西时:

gdb ./idoclink_inbound --pid = 168 -tui我得到以下输出:

exec No process In:                                          Line: ??   PC: 0x0
and "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.8"...
Attaching to program `/opt/smq/idoclink/bin/idoclink_inbound', process 168
/proc/168: Value too large for defined data type.
do_attach: couldn't save traced faults.
(gdb) backtrace
No stack.
(gdb)

我真的需要尝试找出这个过程在做什么,你有什么想法可以解决这个问题吗?

这几乎就像一个GDB错误?

非常感谢任何建议或帮助; - )

林顿

1 个答案:

答案 0 :(得分:1)

  

GDB可能以32位模式编译

您的GDB 绝对以32位模式构建。如果它是以64位模式构建的,则会显示spacv9-sun-solaris...

在64位模式下重建可能会解决问题。