cgo引用定义不一致_新买了 Apple M1 Mac,却不知道如何安装 Go?

本文介绍了在Apple M1 Mac上遇到Go安装问题的原因,由于GOOS=darwin, GOARCH=arm64的组合未被支持,导致预编译版本无法安装。作者提供了四种源码安装Go的方法,特别是通过交叉编译在非M1电脑上生成Go编译器,然后在M1 Mac上使用。文章还强调了Go的交叉编译能力,并鼓励M1用户尝试安装。" 112535958,10293987,LaTeX入门:创建你的第一个report文档,"['LaTeX教程', '报告写作', '排版', '数学公式', '代码编译']
摘要由CSDN通过智能技术生成

点击上方蓝色“polarisxu”关注我,设个星标,不会让你失望

大家好,我是站长 polarisxu。

前些天有一位朋友问我:

688d35fc3144e75f09cc396adb87f314.png

有些朋友可能会有点奇怪,M1 有什么特别的吗?为了照顾部分童鞋,这里简单介绍下。

01 为什么会出现这个问题

大家知道不同的操作系统是很不一样的,同时不同的 CPU 架构也是很不一样的。Go 号称是跨平台的,自然要支持这些操作系统和 CPU 架构。

在 Go 中,GOOS 表示操作系统,GOARCH 表示 CPU 架构。比如你的 Linux 服务器,一般是 GOOS=linux,GOARCH=amd64(即 x86-64);你现在的 Mac 很可能是 GOOS=darwin,GOARCH=amd64 等。这里定义了 Go 支持的操作系统和 CPU 架构:https://docs.studygolang.com/pkg/runtime/internal/sys/#pkg-constants。当然,这里的 GOOS 和 GOARCH 并非任意组合都支持。

一般地,很多人安装 Go,通过网上下载编译好的、对应系统的包,比如到 https://studygolang.com/dl 可以下载你需要的文件,常见的系统是:Linux、Mac 和 Windows。

c30dfe57bca62f5d897b360f1fc32dfe.png

比如 Apple macOS,下载后双击打开,按提示操作即可。

然而,最新版 Mac 没有使用 Intel 芯片,而是使用了自研的 M1 芯片。之前 Intel 芯片是 amd64 架构,而 M1 芯片是 arm64 结构。前面说了,虽然 Go 是支持 arm64 架构的,但并非操作系统和 CPU 架构的任意组合都支持,也就

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值