我不知道如何找到使用核心文件的C/C++ linux應用程序的問題的根本原因。我明白,當應用程序發生意外事件時,核心文件會得到生成。但我不知道從哪裏開始。有人可以給我一個開始?如何利用核心文件在C/C++中查找應用程序問題?
回答
「gdb」是您可以用來分析Linux核心轉儲的主要工具。這裏有幾個很好的教程:
鏈接在哪裏? –
有三個鏈接:)並沒有像「C/C++」這樣的語言。有「C」,有「C++」,你通常會選擇其中一個。我的偏好是「C」;或Java或C#的任何面向對象的東西:) – paulsm4
一些通用的幫助:使用
安裝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」。
- 1. 如何在.Net核心應用程序中讀取web.config文件
- 2. 在.net上的MySQL.Data核心應用程序中的MySQL.Data問題
- 3. 如何利用核心文本
- 4. 如何修改核心應用程序
- 5. 如何在.NET核心應用程序中使用.NET核心類庫?
- 6. 核心文件問題
- 7. 如何在.NET核心應用程序中使用Python?
- 8. 爲iPhone應用程序查找Three20頭文件的問題
- 9. 如何使用ASP.NET核心MVC應用程序中的Web API核心
- 10. Rails應用程序被利用,如何找到哪些利用?
- 11. 如何在XCode + gdb中爲崩潰的應用程序生成核心文件?
- 12. 核心數據問題,應用程序重命名後?
- 13. 核心數據遷移問題 - 它使應用程序崩潰
- 14. 如何在Laravel應用程序中查找特定文件?
- 15. 找到多少個核心正在使用C#應用程序
- 16. ASP.NET核心Web應用程序中
- 17. 在覈心數據的應用程序
- 18. 替換應用程序中的核心數據SQLite文件
- 19. 核心數據sqlite文件嵌入在我的應用程序?
- 20. 如何使用C#在ASP.NET應用程序的文件夾中查找文件?
- 21. 如何在asp.net核心應用程序中設置路線
- 22. 如何在asp.net核心應用程序中運行ssis包?
- 23. 檢查Asp.Net(核心)應用程序是否託管在IIS中
- 24. 查找哪個程序導致了核心轉儲文件
- 25. 如何從.Net核心應用程序中調用AppKit方法?
- 26. 如何在DDMS中查找android應用程序的CPU和內存利用率?
- 27. 如何爲ASP.NET核心應用程序設置上下文
- 28. 過程利用多個核心?
- 29. 如何在c#文件更改後自動運行asp.net核心應用程序
- 30. 在Android上查找應用程序的CPU利用率
對不起,剛剛幾秒鐘前編輯。它在C/C++中。 –
你的意思是核心轉儲? –
我試圖擺脫核心轉儲的第一件事情通常是所有線程的堆棧回溯,這可以使用gdb或pstack等工具完成,其中一些工具是平臺特定的。 –