我正在尝试通过手动创建 gdbserver 并使用远程调试调试配置通过 eclipse cdt 连接到它来调试链接到一些不是标准系统库的标准库(即,它使用不同的 sysroot)的应用程序。虽然我可以连接到服务器并将程序运行到最后(我看到程序标准输出),但如果我在连接错误消息时尝试停止执行,它会失败:
Failed to execute MI command:
-exec-continue
Error message from debugger back end:
Warning:\nCannot insert breakpoint -1.\nTemporarily disabling shared library
breakpoints:\nbreakpoint #-1\nCannot insert breakpoint 1.\nError accessing
memory address 0x804a814: Unknown error -1.\n
但是,我已经设法让它识别并停止在程序启动后设置的断点处。但是,如果我在启动时设置了任何设置,那么对于每个断点,我都会收到与上述错误类似的错误。
如果我在命令行上使用 gdb 连接到它,则使用断点没有问题。我在这里想念什么?