gpt4 book ai didi

debugging - 如何在调试 MSVC ABI Rust 程序时检查变量值?

转载 作者:行者123 更新时间:2023-11-29 07:43:24 31 4
gpt4 key购买 nike

我已经下载了 Rust 1.7.0 的 MSVC ABI 版本,并遵循了文档中的猜谜游戏部分。

我注意到构建使用 native 工具链(在我的例子中是 Visual Studio 2015 Update 2),因此生成 native 调试器(例如 WinDBG、CDB 或 Visual Studio 调试器)可使用的 native PDB(调试符号)。我可以轻松地设置断点、单步执行标准库源代码等等。

我不能做的是检查变量值。无论使用何种调试器,“本地”显示都是空的。

据我所知,当使用 GDB 或 LLDB 作为后端时,Visual Rust/RustDT IDE 会显示局部变量,而不是 native Windows 调试引擎。我不完全确定我是否可以使用它们来调试为 MSVC ABI(使用 PDB 等)编译的 Rust 程序。

如果我想获得必要的调试经验,切换到 GNU ABI 是我唯一的选择吗?除此之外,是否有一种简单的方法可以从原始调试工具(寄存器、内存映射)映射到 Rust 符号(变量值)?

最佳答案

功能在实现之前不存在。 Rust 建立在 LLVM 和 full PDB support has only recently been considered for LLVM 之上.目前,LLVM 仅提供有限的 PDB 支持,这些限制在 Clang project's MSVC compatibility page 中得到了最好的描述。 .在我看来,最好等到支持出现,尽管对于其他编程语言 interesting workarounds已经实现。

关于debugging - 如何在调试 MSVC ABI Rust 程序时检查变量值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36621130/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com