ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

One option is to set the ulimit on core file to be non-zero and then analyze the core after the crash.

ulimit -c unlimited

will cause the OS to produce a "core file" each time there is a crash which contains some of the info needed to recreate a stack trace. The other portion of the info is contained in the executable which crashed.

The core file ends up in ~/.ros and can be analyzed with gdb like so:

gdb --core=~/.ros/core  /path/to/stack/package/bin/mynode

... where a backtrace can be obtained by using the "backtrace" or "bt" command

One option (which has nothing to do with ROS internals) is to set the ulimit on core file to be non-zero and then analyze the core after the crash.

ulimit -c unlimited

will cause the OS to produce a "core file" each time there is a crash which contains some of the info needed to recreate a stack trace. The other portion of the info is contained in the executable which crashed.

The core file ends up in ~/.ros and can be analyzed with gdb like so:

gdb --core=~/.ros/core  /path/to/stack/package/bin/mynode

... where a backtrace can be obtained by using the "backtrace" or "bt" command

One option (which has nothing to do with ROS internals) is to set the ulimit on core file to be non-zero and then analyze the core after the crash.crash. By default the core size limit is set to 0 in Ubuntu

ulimit -c unlimited

This will cause the OS to produce a "core file" each time there is a crash which contains some of the info needed to recreate a stack trace. The other portion of the info is contained in the executable which crashed.

The core file ends up in ~/.ros and can be analyzed with gdb like so:

gdb --core=~/.ros/core  /path/to/stack/package/bin/mynode

... where a backtrace can be obtained by using the "backtrace" or "bt" command

One option (which has nothing to do with ROS internals) is to set the ulimit on core file to be non-zero and then analyze the core after the crash. By (By default the core size limit is set to 0 in UbuntuUbuntu)

Set to unlimited:

ulimit -c unlimited

This will cause the OS to produce a "core file" each time there is a crash which contains some of the info needed to recreate a stack trace. The other portion of the info is contained in the executable which crashed.

The core file ends up in ~/.ros and can be analyzed with gdb like so:

gdb --core=~/.ros/core  /path/to/stack/package/bin/mynode

... where a backtrace can be obtained by using the "backtrace" or "bt" command