Go语言在Mac、Linux、Windows系统环境下使用交叉编译命令

字号+ 编辑: 国内TP粉 修订: 种花家 来源: youhei 2023-09-11 我要说两句(0)

Golang 支持在一个平台下生成另一个平台可执行程序的交叉编译功能。

苹果Mac系统

Mac下编译Linux, Windows平台的64位可执行程序:

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build gofile.go
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build gofile.go

Linux系统

Linux下编译Mac, Windows平台的64位可执行程序:

CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build gofile.go
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build gofile.go

Windows系统

Windows下编译Mac, Linux平台的64位可执行程序:

SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64
go build gofile.go
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
go build gofile.go

GOOS:目标可执行程序运行操作系统,支持 darwin,freebsd,linux,windows

GOARCH:目标可执行程序操作系统构架,包括 386,amd64,arm

早期go版本注意事项:

Golang version 1.5以前版本在首次交叉编译时还需要配置交叉编译环境:

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 ./make.bash
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 ./make.bash

 

make.bash文件只在Golang源码编译安装情况下才用。


阅完此文,您的感想如何?
  • 有用

    0

  • 没用

    0

  • 开心

    0

  • 愤怒

    0

  • 可怜

    0

1.如文章侵犯了您的版权,请发邮件通知本站,该文章将在24小时内删除;
2.本站标注原创的文章,转发时烦请注明来源;
3.交流群: PHP+JS聊天群

相关课文
  • GO语言GORM如何更新字段

  • gorm如何创建记录与模型定义需要注意什么

  • gorm一般查询与高级查询

  • GORM时间戳跟踪及CURD(增删改查)

我要说说
网上宾友点评