使用Goland写代码,最后如何在Centos7Linux环境下去部署运行?

前言

Go语言入门菜鸡,一直在用Goland写代码,因为vim配置Go的开发环境简直不要太难,放弃了。一直很困惑,我如何在Windows下编写代码,然后再拿去Linux下去部署运行?原来一直以为需要把代码弄过去,然后编译,运行,不懂得交叉编译这回事,今天搞了一下,做个记录。

编译

  1. 当我们在Windows上用IDE把程序写好之后,想要打包部署到Linux上运行。使用cmd切换到当前项目目录下(main.go目录下),或者使用Goland的Terminal,然后执行以下命令:

$ set GOARCH=amd64
$ set GOOS=linux

GOOS指的是目标操作系统,支持以下操作系统
darwin freebsd linux windows android dragonfly netbsd openbsd plan9 solaris
GOARCH指的是目标处理器的架构,支持一下处理器架构
arm arm64 386 amd64 ppc64 ppc64le mips64 mips64le s390x
设置好了目标操作系统与目标处理器的架构后,我们对main.go文件执行go build 命令了,就可以得到我们想要的目标文件了。

go build -o “packageName” main.go

-o :后面跟指定的生成的可执行程序的名字,当然也可以不使用-o 直接运行

go build main.go

在当前目录下会生成可执行mian的可执行二进制文件。

发布

把文件上传到Linux上的相关目录,改变文件的属性:

chmod -R 777 main

然后就可以直接运行了。

各个平台的打包方式

1、Mac下编译Linux, Windows平台的64位可执行程序:

$ CGO_ENABLED=0

GOOS=linux

GOARCH=amd64

go build test.go

$ CGO_ENABLED=0

GOOS=windows

GOARCH=amd64

go build test.go

2、Linux下编译Mac, Windows平台的64位可执行程序:

$ CGO_ENABLED=0

GOOS=darwin

GOARCH=amd64

go build test.go

$ CGO_ENABLED=0

GOOS=windows

GOARCH=amd64

go build test.go

3、Windows下编译Mac, Linux平台的64位可执行程序:

$ SET CGO_ENABLED=0

SET GOOS=darwin3

SET GOARCH=amd64

go build test.go

$ SET CGO_ENABLED=0

SET GOOS=linux

SET GOARCH=amd64

go build test.go

你可能感兴趣的:(计算机语言---go语言)