Question

I am running an application on a Embedded board (Linux kernel 2.6.39.2). The application is writen in C and compiled by a toolchain with core-dump flag (-g).

When it crashes (Segmentation Fault) it generates the core-dump file. However the board has no gdb installed.

How can I analyse this core-dump file on my Linux Machine (Kernel 3.2.0-36-generic-pae and GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1))? There is any option to pass to the gdb on my machine indicating the toolchain compiler and the kernel where the application run?

Was it helpful?

Solution

You have to make sure that all the libraries (and hopefully their debuginfo) that were in use by the remote program are available to the local gdb. They have to be the exact same versions. Then, the simplest thing to do is use "set sysroot" before loading the core file into gdb. You don't need to tell gdb about the compiler or the kernel.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top