Cygwin终端GDB列表功能不工作

Cygwin Terminal GDB list function not working

本文关键字:工作 功能 列表 终端 GDB Cygwin      更新时间:2023-10-16

我最近下载了带有gdb、gcc和g++的32位cygwin终端。我写了一个简单的c程序,并称之为code.c。它如下所示:

#include <stdio.h>
int main()
{
  int i;
  for(i = 0; i<10; i++)
  {
    printf("Hello, World!n");
  }
}

首先,我打开cygwin终端,导航到适当的目录,然后运行命令:

gcc code.c

这一操作正常,并且在同一目录中创建了一个名为.exe的可执行文件。然后,我将可执行文件的符号加载到gdb中,并使用以下命令初始化gdb:

gdb -q ./a.exe

这也是正确的,正如它所说:Reading symbols from ./a.exe...done.

然后我测试了gdb的一些功能。

disassemble main输出正确的汇编指令,run正确运行程序。

然而,当我尝试list以输出c源代码时,我没有收到任何输出,当我键入list main时,我收到了以下内容:

1        usr/src/debug/cygwin-2.3.1-1/winsup/cygwin/crt0.c: No such file or directory

我的问题是list命令以前工作过,但由于某种原因停止了正常工作。我想这可能是我的cygwin安装有问题,或者可能是我手动将c:\cygwin\bin添加到了我的windows Path变量中。如有任何帮助或建议,我们将不胜感激。

您需要gcc -g code.c来注释调试信息。否则调试器将无法工作。

我遇到了一个类似的问题,你必须从cygwin-gcc-debuginfo或gdb-debuginfo或两者都安装