分享
Go打包二进制文件
赵栩彬 · · 10804 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
背景
众所周知,go语言可打包成目标平台二进制文件是其一大优势,如此go项目在服务器不需要配置go环境和依赖就可跑起来。
操作
需求:打包部署到centos7
笔者打包环境:mac os
方法:进入main.go所在目录,输入如下命令,当前目录便会生成main的可执行文件
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
截屏2020年03月10日下午11.45.52.png
Windows平台打包到Linux执行不一样,需要输入如下命令
set CGO_ENABLED=0
set GOOS=linux
set GOARCH=amd64
go build
- CGO_ENABLED 表示不使用cgo
- GOOS 表示目标平台系统(Windows,linux,darwin「mac os」等等)
- GOARCH 表示目标系统架构(arm arm64 386 amd64 等等)
打包完成后,将二进制文件放到服务器系统,赋可执行权限:
chmod 773 main
直接运行即可:
./main
或后台执行:
nohup ./main 1>info.log 2>&1 &
传送门:后台运行命令
如此便是go打包到linux平台的完整操作,欢迎大家指证。
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信10804 次点击
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
背景
众所周知,go语言可打包成目标平台二进制文件是其一大优势,如此go项目在服务器不需要配置go环境和依赖就可跑起来。
操作
需求:打包部署到centos7
笔者打包环境:mac os
方法:进入main.go所在目录,输入如下命令,当前目录便会生成main的可执行文件
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
截屏2020年03月10日下午11.45.52.png
Windows平台打包到Linux执行不一样,需要输入如下命令
set CGO_ENABLED=0
set GOOS=linux
set GOARCH=amd64
go build
- CGO_ENABLED 表示不使用cgo
- GOOS 表示目标平台系统(Windows,linux,darwin「mac os」等等)
- GOARCH 表示目标系统架构(arm arm64 386 amd64 等等)
打包完成后,将二进制文件放到服务器系统,赋可执行权限:
chmod 773 main
直接运行即可:
./main
或后台执行:
nohup ./main 1>info.log 2>&1 &
传送门:后台运行命令
如此便是go打包到linux平台的完整操作,欢迎大家指证。