【问题标题】:gdb coredump: "value has been optimized out"gdb coredump:“值已被优化”
【发布时间】:2017-09-29 09:15:09
【问题描述】:

在分析核心转储文件时,如何查看已优化的值? 有没有办法获取它们存储的寄存器?

【问题讨论】:

标签: linux gdb


【解决方案1】:

如果您正在寻找一个核心,其中某些值已被优化,那么可能已经为时已晚。最简单的方法是,您可以在启用调试的情况下定期在构建中重现核心。

但是,如果您做不到,我运气不错的一个技巧是进一步向上移动调用堆栈并尝试通过更多级别的间接获取有趣的数据(例如,如果您在调用堆栈,也许您需要的指针在内存位置而不是在丢失的寄存器中)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-20
    • 2012-02-04
    • 2013-04-05
    • 1970-01-01
    • 2014-12-09
    • 2015-08-15
    • 2020-10-06
    • 2022-07-02
    相关资源
    最近更新 更多