查找由于信号SIGSEGV的错误,分割错误



我已经创建了一个实时项目的c代码。我使用的是Ubuntu 15.04,代码崩溃的结果是:

     Program received signal SIGSEGV , Segmentation fault.
     [Switching to thread 0x7fffeb7fe700 (LWP 4072)]
     __GI___pthread_mutex_lock (mutex=0xfffffffeb5c6dcb0)
     at ../nptl/pthread_mutex_loxk.c:67
     67       ../nptl/pthread_mutex_lock.c: File o directory non esistente

提示:(gdb) x/i $pc显示如下信息:

     => 0x7ffff7bc4c84 <__GI___pthread_mutex_lock+4>:   move  0x10(%rdi),%edx

这个问题是由stackoverflow引起的吗?我该如何解决这个问题?是否有可能知道崩溃出现的确切代码行?

我建议使用Valgrind来帮助跟踪这类错误。此外,一定要将-g选项传递给gcc,以便在调试时显示行号和源代码行。

最新更新