当升级到Go1.18后
编译Windows/Linux-amd64时都没有遇到问题,但当我利用make想一次性编译所有常用平台如Darwin时遇到报错
# golang.org/x/sys/unix
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/syscall_darwin.1_13.go:29:3: //go:linkname must refer to declared function or variable
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/zsyscall_darwin_amd64.1_13.go:27:3: //go:linkname must refer to declared function or variable
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/zsyscall_darwin_amd64.1_13.go:40:3: //go:linkname must refer to declared function or variable
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/zsyscall_darwin_amd64.go:28:3: //go:linkname must refer to declared function or variable
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/zsyscall_darwin_amd64.go:43:3: //go:linkname must refer to declared function or variable
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/zsyscall_darwin_amd64.go:59:3: //go:linkname must refer to declared function or variable
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/zsyscall_darwin_amd64.go:75:3: //go:linkname must refer to declared function or variable
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/zsyscall_darwin_amd64.go:90:3: //go:linkname must refer to declared function or variable
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/zsyscall_darwin_amd64.go:105:3: //go:linkname must refer to declared function or variable
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/zsyscall_darwin_amd64.go:121:3: //go:linkname must refer to declared function or variable
../../../../pkg/mod/golang.org/x/sys@v0.0.0-20200615200032-f1bc736245b1/unix/zsyscall_darwin_amd64.go:121:3: too many errors
internal/godebug
经查阅是因为sys库版本过旧导致的
可以通过执行如下指令更新该库解决
go get -u golang.org/x/sys