登录
首页 >  Golang >  Go问答

如何在 Windows 10 上交叉编译 Go 程序

来源:Golang技术栈

时间:2023-04-12 15:34:18 103浏览 收藏

本篇文章主要是结合我之前面试的各种经历和实战开发中遇到的问题解决经验整理的,希望这篇《如何在 Windows 10 上交叉编译 Go 程序》对你有很大帮助!欢迎收藏,分享给更多的需要的朋友学习~

问题内容

我想为 linux 机器编译一个 Go 程序。我总是使用这里描述的那种方式:

[如何从 Windows 交叉编译到 Linux?](https://stackoverflow.com/questions/20829155/how- to-cross-compile-from-windows-to-linux#20830892)

在 Windows 10 的最后一次重大更新之前,它运行良好。现在我无法设置GOOSwith

set GOOS=linux

我也尝试以管理员身份启动 PowerShell,但即使这样也不起作用。有没有可以做到这一点的工具?还是有另一种方法可以在 Windows 10 上交叉编译 Go 程序?

正确答案

set是 Windows 命令行解释器 ( cmd.exe) 的内部命令。

如果您使用的是 PowerShell,那么更改环境变量的值应该像这样:

$Env: = ""

有关更多详细信息,请参阅[PowerShell 文档:关于环境变量](https://docs.microsoft.com/en- us/powershell/module/microsoft.powershell.core/about/about_environment_variables?view=powershell-6)

所以要改变GOOS,使用:

$Env:GOOS = "linux"

要进行交叉编译:

  1. 导航到main包所在的文件夹。

  2. 跑步$Env:GOOS = "linux"

  3. 可选择运行$Env:GOARCH = "amd64"

  4. 跑步go build

或者您可以在一行中完成:

$Env:GOOS = "linux"; $Env:GOARCH = "amd64"; go build

要指定输出文件名:

$Env:GOOS = "linux"; $Env:GOARCH = "amd64"; go build -o hello

以上就是《如何在 Windows 10 上交叉编译 Go 程序》的详细内容,更多关于golang的资料请关注golang学习网公众号!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>