Go语言学习——编译

Golang支持交叉编译,即在一个平台上生成另一个平台的可执行程序。

以在windows上编译linux的可执行程序为例,网上的教程普遍如下:

SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64

go build main.go  
go build -o main main.go  //指定可执行文件的命名

不知为何,在笔者的win11上,set命令没有生效。于是补了一条命令:

go env -w GOOS=linux

命令解读

  • GOOS:目标平台的操作系统 (darwin、freedsd、linux、windows)
  • GOARCH: 目标平台的体系架构(386、amd64、arm)
  • CGO: 交叉编译不支持CGO,所以要禁用它

运行

将生成的可执行文件传至目标平台,即可以直接运行,记得赋予该文件可执行权限。

./main

猜你喜欢

转载自blog.csdn.net/chenxy02/article/details/125736783