我有一个使用 OpenWatcom classic(1.9 - 最新稳定版本)为 32 位 DOS/DPMI 目标(带有 DOS32/A 扩展器)编译的应用程序。如果程序因内存访问错误而崩溃,我会得到错误指令的 CS:EIP。如何将其映射到汇编代码/源代码行号?(注:我在 Wine 下使用 Windows 版本的 OpenWatcom(在 Linux 中运行),然后在 DosBox 中运行可执行文件。)
使用 GCC/binutils,我将使用 -ggdb 进行编译,然后在可执行文件上使用 objdump -DS 来获取程序集和源代码视图。有 OpenWatcom 同等产品吗?或者,也许,一个可以做同样事情的交互式调试器?我尝试使用 wdis,但这只适用于目标文件,不适用于可执行文件。由于使用目标文件,我无法知道它将被重新定位到哪里,因此它毫无用处。或者也许至少有一种方法可以为可执行文件生成符号映射?