[英]Stop GDB from stepping through glibc functions
抱歉,標題不完整,沒想到有什么更好的了。
當我通過GDB運行程序以查找Segmentation Fault時,我得到了成千上萬行這樣的垃圾:
(gdb) step
_IO_new_file_xsputn (f=0x76fa0b40 <_IO_2_1_stdout_>, data=0x7efff284, n=7) at fileops.c
1279 fileops.c: No such file or directory.
(gdb) step
1273 in fileops.c
(gdb) step
1279 in fileops.c
(gdb) step
1286 in fileops.c
(gdb) step
1288 in fileops.c
(gdb) step
1289 in fileops.c
(gdb) step
1292 in fileops.c
(gdb) step
1294 in fileops.c
(gdb) step
1292 in fileops.c
...並且不斷地。 這使調試非常困難且乏味,因為:
step
(或按Enter )。 我怎樣才能告訴gdb退出打印這樣的行?
1273 in fileops.c
我可以使用一些配置文件或命令行選項嗎?
您確定需要逐步檢查fileops.c
glibc代碼嗎?
如果只想調試自己的代碼,則應在進入並繼續調試代碼后finish
當前幀以退出_IO_new_file_xsputn
函數。
這是如何step
的工作-它步驟通過代碼。
斷點呢? 如果您設置一個,調試器將在那里停止,並讓您手動單步執行代碼。
對於諸如分段錯誤或類似信號之類的東西,它們會中止執行,您可以在程序停止時run
並backtrace
以獲取有關位置執行已停止的信息。 然后在此處設置一個斷點,程序將在有問題的指令處停止。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.