为了账号安全,请及时绑定邮箱和手机立即绑定

交叉编译:“用户:当前未在 linux/amd64 上实现”

交叉编译:“用户:当前未在 linux/amd64 上实现”

Go
智慧大石 2021-07-08 10:01:27
我在 linux/amd64 机器上编译以下 Go 程序:package mainimport (    "fmt"    "os/user")func main() {    fmt.Println(user.Current())}这工作正常。但是当我从 Mac 机器交叉编译它时,当我在我的 linux 机器上运行该程序时出现以下错误:user: Current not implemented on linux/amd64如何交叉编译和使用包中的 Current 函数os/user?
查看完整描述

1 回答

?
MMTTMM

TA贡献1869条经验 获得超4个赞

这是由于问题 6376:从 linux-amd64 交叉编译时 darwin-amd64 中的 user.Current 恐慌:

os/user 依赖于 cgo,而 cgo 被禁用交叉编译,因此这是意料之中的。

如果您使用 os/user,则必须在 OS X 上进行本地编译。

即使我们启用了交叉编译 cgo 支持,我怀疑每个人在他们的 linux 机器上都有一个可用的 OS X 交叉工具链。

状态:按预期工作


查看完整回答
反对 回复 2021-07-12
  • 1 回答
  • 0 关注
  • 214 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信