1、開啟core dump記錄
ulimit -a 檢視linux下的各種限制
ulimit -c unlimited 設定無限制
2、安裝gdb
參考:https://blog.csdn.net/chengsi101/article/details/79424083
3、編譯時加-g參數,生成debug資訊
如:g++ Hello.cpp -g -std=c++11
若不加,會提示

4、運作:gdb a.out core
a.out:出錯的程式
core:自動生成的dump檔案
5、結果:
下面這張是抓到資訊的圖,指出了錯誤出在的行數及檔案名
退出gdb檢視:輸入 quit
6、core dump檔案找不到,可能太大了,,找個空間大的位置存儲
cat /proc/sys/kernel/core_pattern 檢視檔案名及位置
echo "/home/core-%e-%p-%t" > /proc/sys/kernel/core_pattern 修改路徑和名稱
如果gdb和core不在同一個linux系統下,檢視不了,如下圖