golang跨平台打包部署
程序员文章站
2023-12-28 13:37:22
...
问题描述: 开发基于windows环境,要部署到linux(centos)环境运行。
1 交叉编译知识
Golang从1.5版本起支持交叉编译,可以在一个平台上生成另一个平台的可执行程序,非常方便。
需要指定的参数:
- 环境变量GOOS(操作系统)
- GOARCH(架构)
- CGO_ENABLED(是否启用cgo)
2 步骤
本地编写程序 hello_world.go:
package main
import "fmt"
func main(){
fmt.Println("Hello World")
}
打开终端,设置参数:
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
执行编译命令:
go build hello_world.go
可以看到新生成了名为hello_world的文件。
打开linux,上传至文件夹,更改运行权限:
chmod 777 hello_world
运行
./hello_world
执行成功。