1. 程式人生 > >如何解決"make: *** [all] Segmentation fault (core dumped)“這個問題?

如何解決"make: *** [all] Segmentation fault (core dumped)“這個問題?

今天遇到這個問題,這是在Linux下面經常會遇到的問題:make: *** [all] Segmentation fault (core dumped)?記錄下來一來幫助需要之人,二來記錄自己的成長曆程。

一、關於core檔案產生問題?

1.ulimit -a | grep 'core file size'(判斷能不能產生core檔案)如果不能繼續下面
2.ulimit -c unlimited(設定core檔案大小)
3.ulimit -a | grep 'core file size'(再看)

最後顯示“core file size          (blocks, -c) unlimited”說明可以了

然後重新make編譯就產生了core檔案

二、關於如何使用core檔案?

1.gdb -c core

2.where

注意:然而並沒有定位出來,出現了產生Program terminated with signal SIGSEGV, Segmentation fault??
曰:SIGSEGV(Segment fault)意味著指標所對應的地址是無效地址,沒有實體記憶體對應該地址。

可能出錯的位置太多了

三、那怎麼定位出錯號?

1.gcc -g -o xxxxx xxxxx.c
2.gdb -q XXXXX core
3.where

這樣就可以定位出出錯的號了