首頁  >  文章  >  後端開發  >  為什麼即使我捕獲到異常,GDB 也會拋出有關缺少 raise.c 檔案的錯誤?

為什麼即使我捕獲到異常,GDB 也會拋出有關缺少 raise.c 檔案的錯誤?

Patricia Arquette
Patricia Arquette原創
2024-11-10 06:57:02969瀏覽

Why is GDB throwing an error about a missing raise.c file even though I'm catching an exception?

GDB 錯誤:缺少raise.c 檔案

執行GDB 偵錯程式時,使用者可能會遇到錯誤訊息,抱怨缺少raise. c 文件raise.c 文件。儘管捕獲了異常,但還是會發生這種情況。要解決此問題,需要準備 GDB 以對 C 庫進行完整原始程式碼偵錯。

  1. 安裝Debuginfo 版本的Libc6:

    如果尚未安裝,請安裝libc6 的debuginfo 版本使用:

    sudo apt install libc6-dbg
  2. 準備套件系統:

    確保套件系統可以透過以下方式處理原始程式碼套件:

      安裝dpkg-dev: sudodpkg-dev: sudodp apt install dpkg-dev
    • 檢查/etc/apt/sources.list 中的deb-src 行(必要時取消註解)
    • 更新儲存庫: sudo apt update
  3. 下載原始碼代碼:

      建立一個目錄(例如/opt/src)
    • 下載已安裝的C庫版本的原始碼:

      cd /opt/src
      apt source libc6
    • 記下目錄名稱(例如, /opt/src/glibc-2.23)
  4. 設定GDB:

    透過執行確定GDB 需要原始碼的目錄(gdb) GDB 內的資訊來源。使用 (gdb) set replacement-path 指定正確的目錄路徑或將原始程式碼移至預期位置。

以上是為什麼即使我捕獲到異常,GDB 也會拋出有關缺少 raise.c 檔案的錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn