GDB在mac上安裝與運行

what gdb?

Gdb是一款代碼調(diào)試工具。Mac下依舊支持,但是由于MacOS系統(tǒng)本身以及版本不協(xié)調(diào)等原因使用過程會遇到各種各樣的問題。本文詳細記錄了從Gdb安裝,鑰匙串配置過程。

安裝

方式1

brew install gdb

我的使用brew安裝未成功,所以我使用了方式2編譯安裝

方式2

1.下載

下載地址
我下載的最新版 gdb-8.2.tar.gz

2.配置 編譯 安裝

# 配置
./configure
# 編譯
make -j4
# 安裝
make install

查看安裝

# 查看gdb版本
gdb -v
src gdb -v
GNU gdb (GDB) 8.2
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

配置調(diào)試權(quán)限

運行如下命令報錯

(gdb) run
Starting program:
No executable file specified.
Use the "file" or "exec-file" command.

這是因為Darwin內(nèi)核在你沒有特殊權(quán)限的情況下,不允許調(diào)試其他進程。調(diào)試某個進程,意味著對這個進程有完全的控制權(quán)限。所以出于安全考慮默認是禁止的。所以允許gdb控制其它進程最好的方法就是用系統(tǒng)信任的證書對它進行簽名。

創(chuàng)建證書

  1. command+空格鍵,輸入鑰匙串訪問。
  2. 菜單上點擊鑰匙串訪問->證書助理->創(chuàng)見證書
  3. 填寫如下信息
    名稱:gdb_codesign
    身份類型:自簽名根證書
    證書類型:代碼簽名
  4. 勾選:讓我覆蓋這些默認設(shè)置

之后一直next,直到出現(xiàn)“指定證書位置”,選擇系統(tǒng),然后完成。
之后在左側(cè)邊欄上邊選擇“系統(tǒng)”,下邊選擇“我的證書”可以看到創(chuàng)建的證書,然后雙擊。展開“信任”這一項,選擇 代碼簽名 “始終信任”。
關(guān)掉窗口,此時需要驗證密碼。
重啟下系統(tǒng),然后再執(zhí)行:codesign -s gdb-cert $(which gdb)

使用

先編譯一段代碼

go build -gcflags "-N -l" test.go  //關(guān)閉內(nèi)聯(lián)優(yōu)化,便于輸出調(diào)試信息

載入go運行時環(huán)境

(gdb) source /usr/local/go/src/pkg/runtime/runtime-gdb.py
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容