Golang在Windows环境下编译出Linux环境下运行的可执行程序

首先,获取目标系统所支持的构架,比如x86/x64/arm64/arm 等等。

在 linux 系统中,可以使用命令uname -a查看系统的一些信息;以作者的机器来说,如果你看到arm64之类的字样,表明你的系统是支持这种架构的程序的。

我们只需要将写好的go语言编译成这类架构的Linux程序即可。

在windows 系统CMD下,输入命令:go env查看 go的环境变量。

其中有两个参数对于跨平台编译至关重要。一个为%GOOS,一个为%GOARCH。在Windows系统下,%GOOS默认为 windows,%GOARCH 为 amd64 (根据系统不同,可能有所不同)。

要将程序编译为Linux程序,需设置 %GOOS 为 linux,且%GOARCH为Linux系统支持的架构。

在CMD下,输入:

go env -w GOOS=linux
go env -w GOARCH=adm64

然后编译GO程序即可,如无意外,会在工作目录生成一个无扩展名的文件,我们就可以在Linux系统下运行它了。

Linux系统下运行程序需要为新文件赋予可执行权限。

我们可以使用这种方法在Windows系统下编译出其它平台的可执行程序,相反,也可以在Linux系统下编译出Windows平台的可执行程序。

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/1541.html

分类: 计算机技术
推荐阅读:
C语言生成指定长度的字符串密码 在C语言中使用当前时间和进程识别码作为随机种子,生成一个指定长度,内容随机的字符串密码;
pip和pip3有什么区别,用哪个? pip 是一个现代的,通用的 Python 包管理工具。提供了对 Python 包的查找、下载、安装、卸载的功能。
PySide6改变界面主题风格 在本文中,您将学会如何使用QApplication的静态函数setStyle()更改PySide6的主题风格;
使用requests请求后的响应内容 使用Requests进行get请求或post请求后,requests会返回一个Response对象;
Linux一条命令删除文件中的重复项 在Linux系统中,如果你想给一个包含重复项(以行为一个单位)的文件去重,那么你只需要一条命令即可实现;
C程序计算二阶行列式的值 本文将使用C语言编写程序计算二阶行列式的值;程序通过定义一个2*2数组用于存储输入的二阶行列式;再通过前文的公式计算出二阶行列式的值;