gpt4 book ai didi

c++ - Windows 上 C++ Mingw 的崩溃报告

转载 作者:可可西里 更新时间:2023-11-01 14:14:23 25 4
gpt4 key购买 nike

我正在尝试使用 MingW 在 Windows 上使用 C++ Qt 编写崩溃报告。我引用了 https://spin.atomicobject.com/2013/01/13/exceptions-stack-traces-c/但我的代码没有编译并给出以下错误 -我在带有 Qt 5.4.0 mingw 的 Windows 10 上使用此代码。编译这段代码时我遇到了一些错误。错误:未定义对 _imp__SymInitialize@12 的引用
错误:对
_imp__SymGetModuleBase@8 的 undefined reference 错误:未定义对 _imp__SymFunctionTableAccess@8′ 的引用
错误:对
_imp__StackWalk@36′ 的 undefined reference 错误:对 `_imp__SymCleanup@4′ 的 undefined reference

这些错误来自以下代码。

void windows_print_stacktrace(CONTEXT* context)
{
SymInitialize(GetCurrentProcess(), 0, true);

STACKFRAME frame = { 0 };

/* setup initial stack frame */
frame.AddrPC.Offset = context->Eip;
frame.AddrPC.Mode = AddrModeFlat;
frame.AddrStack.Offset = context->Esp;
frame.AddrStack.Mode = AddrModeFlat;
frame.AddrFrame.Offset = context->Ebp;
frame.AddrFrame.Mode = AddrModeFlat;

while (StackWalk(IMAGE_FILE_MACHINE_I386 ,
GetCurrentProcess(),
GetCurrentThread(),
&frame,
context,
0,
SymFunctionTableAccess,
SymGetModuleBase,
0 ) )
{
addr2line(icky_global_program_name, (void*)frame.AddrPC.Offset);
}

SymCleanup( GetCurrentProcess() );
}

imagehlp.dll 负责以上功能。谁能告诉我如何解决此类错误。

提前致谢。

最佳答案

看起来好像您没有添加 imagehlp.lib将库导入您的构建?即将其添加到其他平台库的列表中。如果您必须为 <imagehlp.h> 添加包含路径那么你可能会发现 imagehlp.lib在同级目录中。

关于c++ - Windows 上 C++ Mingw 的崩溃报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40146402/

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