I'd like to find out where exactly an application written in C/C++ fails. I can not debug the application directly, neither using gdb / lldb or using an IDE because the application is launched by a program (it is a robot controller for the webots robot simulation software). In the OSX console I can find a 'User Diagnostic Report' which even shows a strack trace at the moment of crashing. I just need to find out where exactly in my source code the crash happens, but I don't understand the following stack trace syntax:
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: EXC_I386_GPFLT
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libsystem_c.dylib 0x00007fff92d6b859 strtol_l + 77
1 controller_2 0x0000000100006b57 main + 4839
2 controller_2 0x00000001000010b4 start + 52
Apparently somewhere (+4839
) in my int main() {}
function something eventually calls strtol_l
(must be indirect because there is no appearance of this function call in the controller code) which causes the crash.
What does the + 4839
stand for? is it a memory block offset? It can not be a source code line number as the source code for the controller is ~1200 lines only and the controller is not compiled with debug info.