使用Linux時,難免會需要追蹤系統安裝的軟體包的資訊,但如果自己重新編譯該軟體包又太花時間且費事。
因此這時候就可以使用發行版編好的debuginfo包,在Debian 12 bookworm這個方式非常容易。
首先在目錄下的.bashrc中增加
export DEBUGINFOD_URLS="https://debuginfod.debian.net"
重新source .bashrc即可,debuginfod是一個客戶端/服務器,可以通過 HTTP 自動將 ELF/DWARF/源代碼從服務器分發到客戶端。
接下來使用gdb後該著你要追蹤的執行程式即可。
以上的配置適合個人用戶,如果想要全局配置的話,Debian 提供一個安裝包libdebuginfod-common,安裝之後使用以下命令:
dpkg-reconfigure libdebuginfod-common
會開啟 Package configuration ,選擇Yes之後就會看到 /etc/profile.d/目錄下多了 debuginfod.sh、debuginfod.csh兩個檔案。
重新以登入shell進入之後就開啟全局的debuginfod配置了。