gdb 调试msvc编译的exe
时间: 2023-08-18 09:05:21 浏览: 94
你可以使用 gdb 的远程调试功能来调试 MSVC 编译的可执行文件。下面是几个步骤:
1. 在 Windows 上编译可执行文件时,需要添加调试信息。在 MSVC 中,可以通过在项目属性中启用“生成调试信息”选项来实现。在生成可执行文件时,将生成一个 .pdb 文件。
2. 将可执行文件和 .pdb 文件复制到 Linux 系统中。
3. 在 Linux 上启动 gdb。使用以下命令:
```
gdb <executable>
```
其中,`<executable>` 是可执行文件的路径。
4. 使用以下命令连接到 Windows 上的 gdbserver:
```
target remote <windows-ip>:<port>
```
其中,`<windows-ip>` 是 Windows 系统的 IP 地址,`<port>` 是 gdbserver 使用的端口号。
5. 使用以下命令加载 .pdb 文件:
```
symbol-file <path-to-pdb-file>
```
其中,`<path-to-pdb-file>` 是 .pdb 文件的路径。
6. 现在,你可以使用 gdb 来调试可执行文件了。可以使用以下命令设置断点:
```
break <function-name>
```
其中,`<function-name>` 是要设置断点的函数名。
7. 最后,使用以下命令运行可执行文件:
```
run
```
现在,gdb 应该会连接到 Windows 上的 gdbserver,并在可执行文件中设置断点。你可以使用 gdb 的其他命令来查看变量、执行代码等。