I get the following message in gdb (version 7.1):
[Thread debugging using libthread_db enabled]
and the command reverse-step
You don't mention which version of GDB you're using, but since a little while, the parameter libthread-db-search-path
is available.
(gdb) set libthread-db-search-path /tmp
(gdb) start
Temporary breakpoint 1 at 0x400632: file threads.c, line 14.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
will tell GDB to lookup it's helper library (libthread-db.so
) in a directory where it isn't, so multithread debugging won't be enabled!
I'm not sure about OpenMPI parallel applications are multiprocesses (in contrast with OpenMP where they are multithreaded), so it won't change anything for you.
EDIT: Multithread debugging is usually only enabled when libpthread.so
or equivalent is loaded by your process (ldd your-process
to check if it's linked as a shared library) so if you don't need it, there might be a problem in your compilation script.