Ubuntu上正确打包Golang程序的方法与步骤
时间:2026-08-21 | 作者:骑光打字机 | 阅读:0在Ubuntu上给Golang程序打包,并没有想象中那么复杂。把流程拆成几个步骤后,照着操作即可完成。
Ubuntu上打包Golang程序的基本流程
- 先安装Go环境
- 进入项目根目录
- 使用 go build 构建程序
- 按需选择交叉编译或静态链接
- 将可执行文件复制到目标系统运行
-
首先,Go环境得先装好。如果还没装,去Go官网下载对应Ubuntu版本的安装包,按提示安装就行。
这一步是基础,跳过的话后面什么都跑不起来。
-
把Golang程序代码放在一个文件夹里,比如叫
myapp。这个文件夹就是你的项目根目录,后面所有操作都在这里进行。
-
打开终端,切换到那个文件夹:
cd /path/to/myapp -
用
go build命令构建程序,这是最直接的方式。假设你的主文件叫
main.go,运行:go build main.go完成后,当前目录下会生成一个可执行文件,名字就是
main(Windows下是main.exe)。生成后可直接使用。
-
(可选)如果你想为其他操作系统或架构编译,比如在Ubuntu上为Linux amd64打包,可以用
GOOS和GOARCH环境变量指定目标平台:GOOS=linux GOARCH=amd64 go build main.go这样生成的可执行文件就专门针对Linux amd64系统。
拿到别的架构上跑可能会出问题。
-
(可选)如果你希望生成一个完全静态链接的可执行文件,不依赖任何外部库,可以加上
CGO_ENABLED=0。这样能避免运行时因为缺少C库而报错。比如:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -a -installsuffix cgo main.go生成的
main文件就是纯静态的。适合部署到那些没有完整运行环境的容器或嵌入式设备上。
-
最后一步,把生成的可执行文件复制到目标系统。
如果你有远程服务器,用
scp命令最方便:scp myapp/main user@remote_host:/path/to/destination复制过去后,在目标机器上直接运行:
./main
打包时需要重点理解的内容
- go build:最基础、最直接的构建方式
- GOOS 和 GOARCH:用于指定目标平台,适合交叉编译
- CGO_ENABLED=0:用于生成静态链接可执行文件,减少运行环境依赖
按照这个流程走,Ubuntu下的Golang打包和部署就能一气呵成。
关键是理解每一步在做什么,尤其是交叉编译和静态链接的选项,按需选用就好。
免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。
相关文章
更多-
- Ubuntu下使用Git管理Swagger项目的完整指南
- 时间:2026-08-31
-
- Ubuntu下GIMP滤镜使用全指南:从基础操作到批量处理
- 时间:2026-08-31
-
- Ubuntu下使用Telnet进行远程管理的完整指南
- 时间:2026-08-31
-
- Ubuntu中如何查看磁盘I/O对CPU的影响:cpustat替代方案
- 时间:2026-08-31
-
- Ubuntu系统使用cpustat查看多核CPU信息的方法
- 时间:2026-08-31
-
- Ubuntu中Rust日志系统配置指南
- 时间:2026-08-27
-
- Ubuntu下Rust集成第三方库完整指南
- 时间:2026-08-27
-
- Ubuntu下Rust跨平台开发:从环境搭建到自动化测试指南
- 时间:2026-08-27
精选合集
更多大家都在玩
大家都在看
更多-
- 以下哪种食材被称为“地下苹果” 蚂蚁庄园今日答案9.18
- 时间:2026-09-17
-
- 蚂蚁庄园今天答题答案2026年9月18日
- 时间:2026-09-17
-
- 蚂蚁庄园答题今日答案2026年9月18日
- 时间:2026-09-17
-
- 蚂蚁庄园小课堂2026年9月18日最新题目答案
- 时间:2026-09-17
-
- 小鸡答题今天的答案是什么2026年9月18日
- 时间:2026-09-17
-
- 蚂蚁庄园每日答题答案2026年9月18日
- 时间:2026-09-17
-
- 蔬菜洗完掉色,说明是被染色了,是真的吗 蚂蚁庄园今日答案9月18日
- 时间:2026-09-17
-
- 满襟蜡绘花纹巧染就花纹当绣裳说的是哪种传统技艺 蚂蚁新村今日答案2026.9.17
- 时间:2026-09-17
