1

当使用 GDB(在 Gentoo Linux 上使用文本接口、TTY 和 SSH)调试 C 代码时,我想打印对象中的数据。当我尝试使用print-object <objectname>时,我收到消息

此表达式的评估要求程序具有函数“_NSPrintForDebugger”

我找不到任何关于如何创建这样一个函数的文档或示例(是我,还是 Linux 文档的示例非常短?)。我想要一个可以为 gdb 建模的 NSPrintForDebugger 函数示例。请注意,我是 C、Linux、MPI、emacs 和 gdb 的新手。

为了让这有点困难,我找不到我要打印的所有对象的定义。

如果它有助于举个例子,我想要的一些对象print-object是:

  1. 用户数据

    typedef struct { realtype dx, hdcoef, hacoef; int npes, my_pe MPI_Comm comm; 实型 z[100]; } *用户数据; 用户数据数据;

  2. N_Vector(SUNDIALS 的一部分,可能有不同的定义)。

  3. void *cvode_mem(任何指向 void 的指针)
  4. realtype(不同大小的浮点数,也是 SUNDIALS 的一部分)
  5. MPI_Comm(可能只是一个整数)

PS我注意到,例如,p *data显示了很多信息。但我想要更多。

4

1 回答 1

1

NSPrintForDebuggerGDBprint-object命令调用的函数是 Objective-C 运行时的一部分。由于您没有使用 Objective-C,因此请忽略它。

于 2012-08-19T19:46:04.197 回答