发布于2026-07-03 阅读(0)
扫一扫,手机访问
在 Ubuntu 系统上,用 Go 语言给自己的应用程序打个包,其实并没有想象中那么复杂。下面就把整个过程拆解清楚,每一步都不含糊。

先确认是不是已经在 Ubuntu 里装好了 Go。如果还没装,跑一行命令就能搞定:
sudo apt update
sudo apt install golang-go
装完之后,用 go version 验证一下,看到版本号输出就说明环境就绪了。
假设你手头已经有一个 main.go 文件——也就是你的核心代码。这一步没什么特别,重点在后面。
为了方便管理编译产物,建议提前配好两个环境变量:GOPATH 和 GOBIN。在 ~/.bashrc 或 ~/.profile 里加上下面三行:
export GOPATH=$HOME/go
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN
然后执行 source ~/.bashrc 让配置立即生效。这一步不是必须的,但配好后后续操作会更顺手。
最直接的打包方式就是 go build。比如你的主文件是 main.go,想生成一个叫 myapp 的可执行文件,命令如下:
go build -o myapp main.go
执行完,当前目录下就会多出一个 myapp 文件。直接 ./myapp 就能跑。
如果想让生成的文件不依赖任何外部动态库(比如在没装 Go 运行时的机器上也能跑),可以用这个组合拳:
CGO_ENABLED=0 go build -a -installsuffix cgo -o myapp main.go
这里面几个参数的作用值得注意:
CGO_ENABLED=0:关掉 CGo,保证纯静态链接。-a:强制重新编译所有依赖包。-installsuffix cgo:给安装的包加上后缀,避免跟动态链接版本的包混在一起。这样打出来的 myapp 体积会稍微大一点,但兼容性更好,扔到任何 Linux 机器上都能直接跑。
打包完成后,直接把 myapp 这个文件发给别人就行。对方不需要装 Go,不需要配环境,双击(或命令行执行)就能用。这也是 Go 语言在部署时最大的优势之一。
如果你需要同时给多个平台(比如 Linux、Windows、macOS)编译,手动切换环境变量就太麻烦了。从 Go 1.17 开始,社区常用的 gox 工具可以帮忙搞定跨平台打包。安装方法:
go get github.com/mitchellh/gox
然后一条命令生成三个平台的二进制文件:
gox -osarch="linux/amd64 windows/amd64 darwin/amd64" -output="myapp-{{.OS}}-{{.Arch}}"
执行后,你会看到类似于 myapp-linux-amd64、myapp-windows-amd64.exe、myapp-darwin-amd64 这样的文件。省心又省力。
以上就是在 Ubuntu 里打包 Go 应用的完整流程。从安装环境到编译静态文件,再到跨平台发布,每一步都有对应的命令和解释。照着操作,基本不会出错。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8