【初級入門】Go M1不能Debug

這里記錄下,M1不能Debug的解決方案


查看安裝環(huán)境是否正確

go語言環(huán)境和GoLand編輯器最新版已經(jīng)支持了Debug,如果安裝了最新版仍然不能debug, 請檢查對應(yīng)的Go語言環(huán)境是否和GoLand匹配
查看Go環(huán)境
$ go version

輸出如下:

 go version go1.16.5 darwin/amd64

但是筆者這里安裝的GoLand是Mac M1版本的,也就是arm架構(gòu),所以筆者debug不能使用,然后卸載 go語言環(huán)境,重新安裝即可正常使用

arm版本輸出如下:

go version go1.16.5 darwin/arm64

查看debug工具是否正常

如果按照上面的配置,還是沒有解決問題,報錯如下:

GOROOT=/usr/local/go #gosetup
GOPATH=/Users/xiong/go #gosetup
/usr/local/go/bin/go build -o /private/var/folders/7p/my71y44x2651_c2dr5p771rm0000gn/T/___1go_build_quicksort -gcflags all=-N -l quicksort #gosetup
/Applications/GoLand.app/Contents/plugins/go/lib/dlv/macarm/dlv --listen=0.0.0.0:65304 --headless=true --api-version=2 --check-go-version=false --only-same-user=false exec /private/var/folders/7p/my71y44x2651_c2dr5p771rm0000gn/T/___1go_build_quicksort --
API server listening at: [::]:65304
debugserver-@(#)PROGRAM:LLDB  PROJECT:lldb-1205.0.27
 for arm64.
Got a connection, launched process /private/var/folders/7p/my71y44x2651_c2dr5p771rm0000gn/T/___1go_build_quicksort (pid = 9182).

分析原因:
注意分析關(guān)鍵字 /Applications/GoLand.app/Contents/plugins/go/lib/dlv/macarm/dlv, dlv是golang的debug工具,所以這里是debug工具的問題

解決:
1.去github上下載debug工具delve, 或者使用如下命令安裝
go install github.com/go-delve/delve/cmd/dlv@latest

安裝完成后會在你的$GOPATH/bin目錄下生成一個dlv二進制文件(查看GOPATH路徑 go env)

2.在$GOPATH/bin目錄下新建macarm目錄, 將dlv二進制文件移動到macarm目錄下

3.需要去goland里面去設(shè)置,點開HELP--Edit Custom Properties, 他會提示我們創(chuàng)建一個文件,然后我們在其中添加一行:

# custom GoLand properties, 注意這里必須用絕對路徑,不能用變量如 $HOME
dlv.path=你的gopath目錄/bin

4.最后重啟goland就可以愉快的debug啦


參考:

M1 Debug無法調(diào)試問題

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

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

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