2014-09-04 56 views
2

我已經運行了幾個小時的應用程序,並且它已經崩潰。 (C++應用程序,在LINUX操作系統上)當應用程序沒有從gdb運行時,我能得到應用程序崩潰的原因嗎?

我知道當通過gdb運行應用程序時,我們可以得到行代碼&崩潰的原因。 但不幸的是我忘了通過gdb來運行它:( 有沒有辦法讓飛機墜毀的原因?

+2

它是一個調試版本,你有一個核心文件,並且你有符號嗎?如果是這樣(希望)[看到這個問題/答案](http://stackoverflow.com/questions/5115613/cor E-轉儲文件的分析)。 – WhozCraig 2014-09-04 05:34:12

+1

您應該啓用核心轉儲(例如,在運行應用程序的bash shell中使用'ulimit -c')。 – 2014-09-04 05:41:06

回答

3

您可以通過

ulimit -c unlimited 

使無限核心轉儲大小這將寫下一個核心文件如果發生崩潰,可以從啓動程序的同一個目錄中啓動,之後可以使用gdb選項--core加載它

相關問題