go build 生成不同OS下的可执行文件

golang的一大特性就是跨平台编译
有时候我们会遇到在windows里写代码,然后把程序拿到linux里运行的情况。跨平台编译的便利性会使你喜欢上golang这个语言。

所谓跨平台编译,就是在一个操作系统下生成另一个操作系统下可执行的文件。
你只需要在编写代码的操作系统下设置一些参数即可达到这个目的。

# Windows下编译linux的64位可执行文件
> SET  CGO_ENABLED=0
> SET GOOS=linux
> SET GOARCH=amd64
> go build hello.go

以helloworld作为示例:

package main

import "fmt"

func main() {
    fmt.Println("hello world.")
}

go代码编写完成后,执行go build hello.go,会在目录下生成hello.exe,执行上述命令后,会生成linux下的可执行文件。

go build 生成不同OS下的可执行文件
红框内是linux下的可执行文件.png
go build 生成不同OS下的可执行文件
图片.png

记录不同平台下交叉编译的命令

# Windows下编译Mac平台64位可执行程序:
SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64
go build xxx.go

# Linux下编译 Mac 和 Windows 平台64位可执行程序:
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build xxx.go
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build xxx.go

# Mac 下编译 Linux 和 Windows 平台 64位 可执行程序
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build xxx.go
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build xxx.go
golang后端技术服务器开发

知识分享之Golang——用于在Golang中的加解密工具类,包含MD5、RSA超长字符串、CBC、ECB等算法

2022-6-4 10:53:32

golang后端技术服务器开发

go 爬虫--colly基础入门(一)

2022-6-4 10:57:41

搜索