当前位置: 首页 > 知识库问答 >
问题:

使用MinGW gdbserver进行远程调试

方博学
2023-03-14

我想使用MinGW DebugServer.exe从我的笔记本电脑调试正在开发计算机(作为远程计算机)上运行的进程。但我遇到了一个问题“创建进程”D:\RemotedBG\xxx.exe时出错“,(错误50):请求不受支持”。我使用Visual Studio2013构建了xxx.exe,并尝试使用MinGW GDBServer进行远程调试。

如果这是不可行的,你可以推荐我任何方法做远程调试在Windows。我实际上想从我的主机附加一个在远程机器上运行的进程,并从我的主机gdb应用断点并控制进程的结果。

共有1个答案

段干德泽
2023-03-14

如果这不是Windows防火墙问题,那么可能是32位gdbserver.exe和64位xxx.exe不匹配(反之亦然)。我希望在Windows上调试的程序是64位的,在我重新构建gdbserver.exe以“x86_64-w64-mingw32”而不是我最初的“i586-mingw32msvc”版本为目标之前,我遇到了与您类似的问题。

但是:您不知道Visual Studio2013支持远程调试吗?

 类似资料:
  • 我通过maven-archetype-mojo创建了一个maven插件。我的intellij版本是:intellij 2018.1.7 并且我已经尝试了以下步骤来启动远程调试过程。 我创建了一个远程调试配置并将其指向端口8000 我在项目文件夹的终端中运行mvnDebug clean install,它显示: 准备在调试模式下执行Maven,侦听地址为8000的传输dt_socket null

  • > 停止防火墙服务: 服务firewall_service停止 将进程附加到gdbserver 当我尝试通过在主机框上运行'target remote remote_ip:remote_port'来启动主机上的调试时,我得到一个'connection timedout'错误。 你们能看到我做错了什么吗,任何需要检查的东西,或者通过ssh远程调试的替代方法吗?我将不胜感激。谢谢

  • 错误纯粹是标题。在从Hazelcast检索到的地图中,我对Containeskey所做的任何调用都会得到这个特定的错误。下面的例子: 异常后的堆栈 调用containsKey inside if语句时出错。

  • 从 FreeBSD 2.2 开始提供了对这一功能的支持, 实际上, 它也是一种非常灵活的方式。 GDB 很久以前就已经支持 远程调试 了。 这是通过一种非常简单的串口线协议来实现的。 与前面介绍的方法不同, 要使用这种方式, 您需要使用两台计算机。 其中一台用于提供调试环境, 其中包括全部源代码, 以及一份包含全部符号的编译好的内核; 另一台则运行这一内核 (已经脱去了调试信息)。 您应使用 co

  • 使用远程调试 为了与qemu配合进行源代码级别的调试,需要先让qemu进入等待gdb调试器的接入并且还不能让qemu中的CPU执行,因此启动qemu的时候,我们需要使用参数-S –s这两个参数来做到这一点。在使用了前面提到的参数启动qemu之后,qemu中的CPU并不会马上开始执行,这时我们启动gdb,然后在gdb命令行界面下,使用下面的命令连接到qemu: (gdb) target remot