繁体   English   中英

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

[英]How can I inspect variable values while debugging MSVC ABI Rust programs?

我已经下载了Rust 1.7.0的MSVC ABI版本,并按照文档中的猜谜游戏部分进行了操作。

我注意到构建使用本机工具链(在我的情况下是Visual Studio 2015 Update 2),因此生成本机调试器(如WinDBG,CDB或Visual Studio调试器)可以使用的本机PDB(调试符号)。 我可以轻松设置断点,步入标准库源等等。

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

根据我的收集,Visual Rust / RustDT IDE在使用GDB或LLDB作为后端时显示本地,而不是本机Windows调试引擎。 我不完全确定我是否可以使用它们来调试为MSVC ABI编译的Rust程序(使用PDB等)。

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

功能在实现之前不存在。 Rust是基于LLVM构建的,并且最近才考虑对LLVM使用完整的PDB支持 目前,LLVM仅支持有限的PDB,并且具有Clang项目的MSVC兼容性页面中最佳描述的限制。 在我看来,最好等到支持在那里,尽管对于其他编程语言已经实现了有趣的解决方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM