2012-10-21 49 views
1

我不知道如何找到使用核心文件的C/C++ linux應用程序的問題的根本原因。我明白,當應用程序發生意外事件時,核心文件會得到生成。但我不知道從哪裏開始。有人可以給我一個開始?如何利用核心文件在C/C++中查找應用程序問題?

+1

對不起,剛剛幾秒鐘前編輯。它在C/C++中。 –

+0

你的意思是核心轉儲? –

+1

我試圖擺脫核心轉儲的第一件事情通常是所有線程的堆棧回溯,這可以使用gdb或pstack等工具完成,其中一些工具是平臺特定的。 –

回答

1

學會分析從Here核心轉儲。這是我從中學到的。是的,它使用GDB。

而且this

0

一些通用的幫助:使用

安裝GDB:

百勝安裝GDB

GDB啓動GDB,沒有調試萊

GDB程序開始de竊聽程序由程序

GDB --help描述的命令行選項

1-首先,找到其中產生核心文件的目錄產生

GDB程序核心調試信息轉儲核心。 2-然後在目錄中使用「ls -ltr」命令查找最新生成的核心文件。 3-要加載核心文件使用

GDB的核心文件

這個二進制路徑將加載核心文件。

4-然後您可以使用「bt」命令獲取信息。詳細回溯使用「bt full」。

5要打印變量使用「打印varibale名稱」或「P varibale名」

6-要得到GDB使用任何幫助,「幫助」選項或使用「中肯搜索主題」

7-使用「frame frame-number」轉到所需的幀號。

8-使用「up n」和「down n」命令分別選擇幀n幀和幀n幀。

9-要停止gdb,請使用「quit」或「q」。

相關問題