QT creator创建的可执行exe如何获取调试信息

How does the executable exe created by QT creator take debug info

我的项目设置是这样的:

QMAKE_CFLAGS_RELEASE += -MT
QMAKE_CXXFLAGS_RELEASE += -MT

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

按照上面的设置,pdb和转储文件都可以生成,但是如果我在vs2017调试转储文件,显示模块的调试信息没有源信息。 可执行文件不包含调试信息吗?

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

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