Mac m1的交叉编译

Mac M1交叉编译问题

最近刚从window转到Mac系统,用Mac交叉编译window程序时遇到一点问题。

配置项 \ 目标系统 Mac Windows -
CGO_ENABLED 0 1 是否使用CGO,如果项目有用到c库的话,需要启用,看情况而定
GOOS darwin windows 目标程序的运行系统
GOARCH arm64/amd64 amd64 目标程序的运行环境的芯片架构,M1芯片用arm64
CC gcc x86_64-w64-mingw32-gcc 指定编译器

示例

Mac(编译)系统

# M1程序
CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build main.go

# Mac程序(非M1)
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go

# window程序
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go

Window(编译)系统

# M1程序
CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build main.go

# Mac程序(非M1)
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go

# window程序
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容