代码之家  ›  专栏  ›  技术社区  ›  user8623833

windows上的golang:如何为Linux构建?[副本]

  •  3
  • user8623833  · 技术社区  · 6 年前

    如何在windows for Linux上编译go文件/项目?

    在Linux上,应该可以通过一个衬里:

    GOOS=windows go build -o filename.exe codefile.go
    

    我通过Powershell尝试了类似的操作,但在我的Linux服务器(Ubuntu 16.04 amd64)上只出现了一个错误:

    -bash:/gotest:无法执行二进制文件:Exec格式错误”。

    我尝试了用户Env vars for GOOS = linux GOARCH = amd64 和via set GOOS = linux 在Powershell中,但我对Powershell了解不够-go build命令运行时不会出错并生成文件。

    有人能通过go-1.10的Powershell(或cmd)(通过VS代码)解释windows(10 1709 x64)上的一般操作方法吗?

    1 回复  |  直到 6 年前
        1
  •  10
  •   Paweł Szczur MKer    6 年前

    如果已经在计算机上安装了git bash,请使用它并执行以下命令

    env GOOS=linux go build -o filename
    

    您可以通过以下方式设置整个命令会话的执行操作系统:

    set GOOS=linux
    go build -o filename
    

    它在相同的Windows 10版本上对我有效,在Ubuntu 16.04 LTS上运行平稳