【发布时间】:2016-08-05 21:22:51
【问题描述】:
我已经下载了 Rust 1.7.0 的 MSVC ABI 版本,并按照文档中的猜谜游戏部分进行操作。
我注意到构建使用本机工具链(在我的例子中是 Visual Studio 2015 Update 2),因此生成本机 PDB(调试符号)可由本机调试器使用,例如 WinDBG、CDB 或 Visual Studio 调试器。我可以轻松设置断点,进入标准库源等等。
我不能做的是检查变量值。无论使用何种调试器,“Locals”显示都是空的。
据我所知,Visual Rust/RustDT IDE 在使用 GDB 或 LLDB 作为后端时显示本地,而不是使用原生 Windows 调试引擎。我不完全确定是否可以使用这些来调试为 MSVC ABI 编译的 Rust 程序(使用 PDB 等)。
如果我想获得必要的调试经验,我唯一的选择是切换到 GNU ABI 吗?除此之外,是否有一种简单的方法可以从原始调试工具(寄存器、内存映射)映射到 Rust 符号(变量值)?
【问题讨论】: