我剛剛用 goland 運行了一個 go 專案,但遇到了錯誤:
# github.com/choleraehyq/pid
../../../.go/pkg/mod/github.com/choleraehyq/[email protected]/pid_go1.5_amd64.s:28: expected pseudo-register; found R13
../../../.go/pkg/mod/github.com/choleraehyq/[email protected]/pid_go1.5_amd64.s:29: expected pseudo-register; found R14
asm: assembly of ../../../.go/pkg/mod/github.com/choleraehyq/[email protected]/pid_go1.5_amd64.s failed
我對這個錯誤感到困惑,我不知道該怎么做。我無法通過此錯誤訊息進行一些除錯作業,也沒有從 google 獲得任何有用的資訊。github.com/choleraehyq/pid由框架下參考。
我只想知道發生了什么以及如何解決它。請幫助我,非常感謝。
uj5u.com熱心網友回復:
我只想知道發生了什么以及如何解決它。
- 閱讀說明書。
Stack Overflow:幫助:如何創建一個最小的、可重現的示例
- 按照說明操作。
例如,
package goid
github.com/choleraehyq/[email protected] 以
編程方式檢索當前 goroutine 的 ID。
.
$ cat pid.go
package main
import (
"fmt"
goid "github.com/choleraehyq/pid"
)
func main() {
pid := goid.GetPid()
fmt.Println(pid)
}
$
.
$ cat go.mod
module example/pid
go 1.17
require github.com/choleraehyq/pid v0.0.10
$
.
$ go version
go version go1.17.5 linux/amd64
$
.
$ go build pid.go && ./pid
# github.com/choleraehyq/pid
../../gopath/pkg/mod/github.com/choleraehyq/pid@v0.0.10/pid_go1.5_amd64.s:28: expected pseudo-register; found R13
../../gopath/pkg/mod/github.com/choleraehyq/pid@v0.0.10/pid_go1.5_amd64.s:29: expected pseudo-register; found R14
asm: assembly of ../../gopath/pkg/mod/github.com/choleraehyq/pid@v0.0.10/pid_go1.5_amd64.s failed
$
升級到最新版本。
.
$ go get -u github.com/choleraehyq/pid
go: downloading github.com/choleraehyq/pid v0.0.13
go: upgraded github.com/choleraehyq/pid v0.0.10 => v0.0.13
$
.
$ cat go.mod
module example/pid
go 1.17
require github.com/choleraehyq/pid v0.0.13
$
.
$ go build pid.go && ./pid
1
$
避免使用舊的、過時的和不受支持的軟體版本。
更新:
來自 OP 的評論:
謝謝。原專案是一個大專案,有很深的依賴。我發現我需要添加github.com/choleraehyq/pid v0.0.13 // indirect到專案的go.mod. – sh1yu
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/393698.html
標籤:去
