如何解決"make: *** [all] Segmentation fault (core dumped)“這個問題?
阿新 • • 發佈:2019-02-18
今天遇到這個問題,這是在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
這樣就可以定位出出錯的號了