我在嵌入式主板(Linux 内核2.6.39.2 )上运行应用程序。该应用程序在C中编写,并由带有核心转储标志( -g )的工具链编译。
崩溃时(分段错误),它会生成核心转储文件。但是电路板没有安装gdb。
如何在Linux机器上分析此核心转储文件(内核3.2.0-36-generic-pae和 GNU gdb (Ubuntu / Linaro 7.4-2012.04-0ubuntu2.1)) ?有没有选项可以传递给我的机器上的gdb,指示工具链编译器和运行应用程序的内核?
答案 0 :(得分:1)
您必须确保远程程序正在使用的所有库(希望它们的debuginfo)都可用于本地gdb。它们必须是完全相同的版本。然后,最简单的方法是在将核心文件加载到gdb之前使用“set sysroot”。您无需告诉gdb有关编译器或内核的信息。