是否可以在 x86 机器中加载核心文件(由 arm 处理器生成)?
Posted
技术标签:
【中文标题】是否可以在 x86 机器中加载核心文件(由 arm 处理器生成)?【英文标题】:Is it possible to load core file (generated by arm processor) in x86 machine? 【发布时间】:2021-03-17 19:39:16 【问题描述】:我在基于 arm 架构的嵌入式设备中存在内存限制。 一个程序在某个时候崩溃并生成了核心文件。现在我无法在同一个设备中加载这个核心文件,因为我没有更多的内存来复制源文件和调试可执行文件(没有剥离)。
是否可以在linux机器(ubuntu,x86机器)上加载这个核心文件来查找崩溃位置?
类似于 x86 linux 机器上的东西 #gdb --core --target arm
【问题讨论】:
【参考方案1】:是否可以在linux机器(ubuntu,x86机器)上加载这个核心文件来查找崩溃位置?
是的:您需要二进制文件及其使用的任何共享库、core
文件以及为您的目标主机构建的 GDB 交叉调试器,或者支持多架构。
Ubuntu 提供了gdb-multiarch package,它应该可以正常工作。比如:
gdb --sysroot /path/to/embedded/root /path/to/exe /path/to/core
(gdb) where
【讨论】:
以上是关于是否可以在 x86 机器中加载核心文件(由 arm 处理器生成)?的主要内容,如果未能解决你的问题,请参考以下文章