Debugging
如何找到用於反編譯的分離調試符號?
我正在嘗試在非標準路徑(特別是在/frs/alg/alg/bin/)中不編碼二進製文件的情況下調試段錯誤,並且我注意到反編譯的程式碼比在gdb下調試時具有更少的符號。我假設調試符號是分離的,但是我應該在哪裡找到它們?
大概二進製文件已經分離了調試資訊;如果
gdb
能夠在沒有任何特定配置的情況下找到它,它應該位於其中之一
- 一個基於 build-id 的文件
/usr/lib/debug/.build-id
;.debug
二進製文件旁邊的文件;- 中的一個
.debug
文件/frs/alg/alg/bin/.debug
;- 中的一個
.debug
文件/usr/lib/debug/frs/alg/alg/bin
。二進製文件可能有一個指向分離資訊的調試連結;在二進製文件中查找一個
.gnu_debuglink
部分。要查找其建構 ID(如果有),請查找名為的部分.note.gnu.build-id
或類似的內容。