【问题标题】:How does the executable exe created by QT creator take debug infoQT创建者创建的可执行exe如何获取调试信息
【发布时间】:2021-04-23 11:51:50
【问题描述】:

我的项目设置是这样的:

QMAKE_CFLAGS_RELEASE += -MT
QMAKE_CXXFLAGS_RELEASE += -MT

QMAKE_LFLAGS_RELEASE +=/MAP
QMAKE_CFLAGS_RELEASE += /Zi
QMAKE_LFLAGS_RELEASE +=/debug /opt:ref

按照上面的设置,pdb和dump文件都可以生成了,但是如果我在vs2017中调试dump文件,就说明模块的debug info没有source info。 可执行文件是否不包含调试信息?

【问题讨论】:

  • 我真的无法理解这个问题。 PDB 是 MSVC 的格式,用于在可执行文件外部存储调试信息。这就是你从/Zi 选项中得到的。我不确定您要调试什么“转储”文件。
  • 我的意思是windows中的核心转储,因为我们通常通过它来解决崩溃问题

标签: qt dump


【解决方案1】:

不,可执行文件不包含调试信息。该信息存储在 PDB 文件中,该文件仅由调试工具加载。请参阅here 如何访问转储文件旁边的其他文件(例如 EXE 和 PDB 文件)。

从转储中的其他 DLL 中为 PDB 设置 symbol servers 也可能很有用。

【讨论】:

    猜你喜欢
    • 2012-04-18
    • 1970-01-01
    • 2023-03-17
    • 2019-07-01
    • 2012-09-08
    • 2011-12-18
    • 2016-12-20
    • 2010-12-27
    相关资源
    最近更新 更多