Gcc 使用unwind.h展开堆栈

Gcc 使用unwind.h展开堆栈,gcc,stack,trace,Gcc,Stack,Trace,我想使用gcc进行堆栈展开。我找不到一个示例代码来说明如何做到这一点 我试图按照说明进行操作,但我意识到我的gcc使用的unwind.h是不同的。例如,我没有使用unw\u word\t而是使用\u Unwind\u word。我不知道应该用什么来代替unw\u getcontext()和unw\u init\u local() 我的unwind.h类似于 有人能给我一个使用此库的示例代码链接吗?您尝试使用的示例用于“libunwind”,但您的标题属于“libcorkscrew”。 若你们需要

我想使用gcc进行堆栈展开。我找不到一个示例代码来说明如何做到这一点

我试图按照说明进行操作,但我意识到我的gcc使用的
unwind.h
是不同的。例如,我没有使用
unw\u word\t
而是使用
\u Unwind\u word
。我不知道应该用什么来代替
unw\u getcontext()
unw\u init\u local()

我的
unwind.h
类似于


有人能给我一个使用此库的示例代码链接吗?

您尝试使用的示例用于“libunwind”,但您的标题属于“libcorkscrew”。 若你们需要一个关于如何使用“你们的放松”库的好例子,你们可以看看Android开源项目,他们实现了类CallStack,它实现了不同架构所需的所有功能。 对于您的案例,我建议您查看以下文件:

您的项目文件夹/system/core/libcorksrow/backtrace.c


例如,在该文件中,函数“unwind\u backtrace”使用libcorkscrew库中的“\u unwind\u backtrace”。使用该文件,您可以轻松调整示例。

您尝试使用的示例用于“libunwind”,但您的标题属于“libcorkscrew”。 若你们需要一个关于如何使用“你们的放松”库的好例子,你们可以看看Android开源项目,他们实现了类CallStack,它实现了不同架构所需的所有功能。 对于您的案例,我建议您查看以下文件:

您的项目文件夹/system/core/libcorksrow/backtrace.c

例如,在该文件中,函数“unwind\u backtrace”使用libcorkscrew库中的“\u unwind\u backtrace”。使用该文件,您可以轻松调整示例