golang交叉编译

  1. go env检查各项环境变量无误
  2. 进入shell环境(Windows为cmd环境),切换到项目工程的源码目录(包含main包的那个目录)
  3. 设置好环境变量,关闭CGO(交叉编译不支持所以要关闭),将编译目标平台的环境变量设置好,然后执行go build命令即可,具体方法如下
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build

bash shell环境可以使用如上方式,如果是Windows的cmd环境请使用set命令进行设置

CGO_ENABLED关闭CGO,GOOS设置目标操作系统,GOARCH设置目标架构

可组合有如下

$GOOS        $GOARCH
android     arm
darwin      386
darwin      amd64
darwin      arm
darwin      arm64
dragonfly   amd64
freebsd     386
freebsd     amd64
freebsd     arm
linux       386
linux       amd64
linux       arm
linux       arm64
linux       ppc64
linux       ppc64le
linux       mips
linux       mipsle
linux       mips64
linux       mips64le
netbsd      386
netbsd      amd64
netbsd      arm
openbsd     386
openbsd     amd64
openbsd     arm
plan9       386
plan9       amd64
solaris     amd64
windows     386
windows     amd64

设置好环境变量再执行go build等命令即可编译好该目标平台上的可执行文件

    原文作者:昌维
    原文地址: https://segmentfault.com/a/1190000015735798
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞