不過在 linux 下,你可以使用 catchsegv 來顯示程式錯誤時的 backtrace。用法大概向這樣
catchsegv ./a.out不過 catchsegv 指令只會顯示在有關 segmentation fault 的錯誤的 backtrace。如果你想要顯示各種程式異常時的 backtrace。則要先設定下面的環境變數。
export SEGFAULT_SIGNALS=all事實上, gdb 也可以顯示 backtrace。只是每次發生錯誤,就自動印出 backtrace,會比較方便就是了。
參考資料:BINARY HACKS 駭客祕傳技巧一百招
這本書是工具書,不過裡面教了很多技巧,與原理。值得一讀的好書。
沒有留言:
張貼留言