Libraries

執行 gcore 時“缺少用於…的單獨調試資訊”

  • July 25, 2014

我正在執行以下內容:

command: gcore 56058

output:
Missing separate debuginfo for /lib64/libdl.so.2
Try: zypper install -C "debuginfo(build-id)=dcca9c1f648bda0a7318a7c8844982c440e3e4a3"
Missing separate debuginfo for /lib64/librt.so.1
Try: zypper install -C "debuginfo(build-id)=a8648696e4118ee36ec41c9d75c0520c213ad6ea"
Missing separate debuginfo for /usr/lib64/libstdc++.so.6
Try: zypper install -C "debuginfo(build-id)=a6fb063da357832cfb5db486b331ab960937c906"
Missing separate debuginfo for /lib64/libm.so.6
Try: zypper install -C "debuginfo(build-id)=00ad299aa07655131d2732eee1b767b99cf9c85e"
Missing separate debuginfo for /lib64/libgcc_s.so.1
Try: zypper install -C "debuginfo(build-id)=9da24cf706b41e55ce5373bcb6253c1618b00abf"
Missing separate debuginfo for /lib64/libpthread.so.0
Try: zypper install -C "debuginfo(build-id)=a3bdfa74d39fa9e1c4252ecf5007f7e8c1fcb628"
[Thread debugging using libthread_db enabled]
[New Thread 0x20002407910 (LWP 56067)]
[New Thread 0x20001c07910 (LWP 56066)]
[New Thread 0x20001407910 (LWP 56065)]
[New Thread 0x20000c07910 (LWP 56064)]
[New Thread 0x20000037910 (LWP 56059)]
Missing separate debuginfo for /lib64/libc.so.6
Try: zypper install -C "debuginfo(build-id)=eeb7bc1f31ca2e17c31f5768901f653e47acd6d3"
Missing separate debuginfo for /lib/ld64.so.1

調試資訊是關於什麼的,它們是由什麼引起的,有什麼值得關注的理由嗎?基本上,這是什麼意思?

編譯器可以配置為使用執行檔和/或有助於調試的庫生成額外資訊。使用這些額外資訊,您的調試器可以顯示原始原始碼和變數名稱等。

不幸的是,這些調試資訊佔用了系統的大量空間。考慮到它們幾乎從未使用過(如果一切都按計劃進行),那麼它們只是多餘的並佔用磁碟空間。

為了解決這個問題,許多發行版將包分成兩部分 - 一個包含使該包執行所需的所有內容,第二個包含上面的調試資訊。後者稱為debuginfo包,需要安裝它們才能成功調試主包。

您正在使用 SuSE,因為我不使用它,所以我無法評論如何在該發行版上安裝這些軟體包,除非我相信您啟用了一個儲存庫並使用它的名稱zypper安裝相同的軟體包debuginfo

在 Fedora 上,您啟用儲存庫並使用debuginfo-install命令安裝這些debuginfo軟體包。

您的命令gcore正在創建 process 的核心轉儲56058。安裝debuginfo軟體包後,它可以在核心轉儲中添加更多有用的調試資訊,這就是建議您安裝它們的原因。

引用自:https://unix.stackexchange.com/questions/146537