美文网首页
go的交叉编译

go的交叉编译

作者: 时彬斌 | 来源:发表于2018-12-22 15:12 被阅读0次

    go在使用过程中可以通过go build在当前系统编译在其他操作系统执行的可执行文件

    例如在mac下开发但是我需要在linux下去执行怎么办呢

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

    即可生成可执行文件 main ,在使用时直接通过 sh main 或是 ./main即可执行

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

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

    arm的编译:

    CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build main.go
    

    必须要加上arm64 或是arm32 不然在执行时会出现
    命令不存在的问题:

    zsh: exec format error: ./main
    

    相关文章

      网友评论

          本文标题:go的交叉编译

          本文链接:https://www.haomeiwen.com/subject/znhmcqtx.html