[英]macOS 10.15 Catalina gdb problem for C++ Debugging in Eclipse
我正在使用 macOS 10.15.2 Catalina 並嘗試在 Eclipse 中調試 Hello World C++ 程序。 我已經通過從 Homebrew 安裝 gdb 調試器並按照以下鏈接中的步驟簽署證書來設置它。
https://www.thomasvitale.com/how-to-setup-gdb-and-eclipse-to-debug-c-files-on-macos-sierra/
調試器無法啟動。
我已經在 Eclipse 中設置了 gdb 設置,如下面的屏幕截圖所示。
當我調試項目時,出現錯誤: Configuring GDB Aborting configuring GDB
(下面還提供了它的屏幕截圖)。
您使用的是哪個版本的 gdb 和 Eclipse?
我將嘗試提及我過去遇到的一些問題。
如果您使用 Homebrew 安裝了 gdb,請嘗試將“GDB 調試器”字段設置為實際路徑,例如/usr/local/Cellar/gdb/8.3/bin/gdb
而不是鏈接/usr/local/bin/gdb
。
你的 . gdbinit
文件位於? 在本教程中,它位於用戶主文件夾中,因此在 Eclipse 調試配置中,GDB 命令文件設置為~/.gdbinit
。 屏幕截圖中的值沒有指定絕對路徑,它可能在錯誤的位置尋找它。
您的 gdb 證書是系統鑰匙串(而不是登錄鑰匙串)的一部分嗎? 在簽署過程中,您是否將權利文件作為參數傳遞?
我遇到了類似的問題,我不得不執行兩個步驟來解決它。 我不確定它們是否都需要:
set startup-with-shell off
我在 eclipse 中的調試配置指向這個文件,但是直到我將路徑更改為絕對路徑后它才讀取它。
創建一個包含以下內容的 gdb-entitlement.xml 文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
<true/>
<key>com.apple.security.cs.disable-library-validation</key>
<true/>
<key>com.apple.security.cs.disable-executable-page-protection</key>
<true/>
<key>com.apple.security.cs.debugger</key>
<true/>
<key>com.apple.security.get-task-allow</key>
<true/>
</dict>
</plist>
然后,打開終端提示符,轉到保存 xml 文件的目錄並運行:
codesign --entitlements gdb-entitlement.xml -fs gdb-cert $(which gdb)
其中“gdb-cert”是您之前為代碼簽名創建的證書。 完成這些步驟並在 Eclipse 上正確設置 GDB 路徑后,調試再次工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.