在 Ubuntu 下使用 Go(Golang) 打包(编译成可执行文件)通常很简单,下面按常见场景给你说明。
先确认已安装 Go:
go version
如果没安装:
sudo apt update
sudo apt install golang-go
进入你的 Go 项目目录(有 main.go):
cd your_project
go build
会生成一个和目录名同名的可执行文件。
指定输出文件名:
go build -o myapp
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o myapp.exe
CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -o myapp_arm64
常见参数:
GOOS: windows / linux / darwinGOARCH: amd64 / arm64 / 386go build -ldflags="-s -w" -o myapp
sudo apt install upx
upx myapp
如果你是想 发布成 Ubuntu 软件包:
dpkg-debmkdir -p myapp/usr/bin
cp myapp myapp/usr/bin/
mkdir myapp/DEBIAN
cat > myapp/DEBIAN/control <<EOF
Package: myapp
Version: 1.0
Section: utils
Priority: optional
Architecture: amd64
Maintainer: you <you@example.com>
Description: My Go App
EOF
dpkg-deb --build myapp
生成:
myapp.deb
安装:
sudo dpkg -i myapp.deb
[Unit]
Description=My Go App
[Service]
ExecStart=/usr/bin/myapp
WorkingDirectory=/opt/myapp
Restart=always
[Install]
WantedBy=multi-user.target
如果你指的是:
可以告诉我具体需求,我可以给你更针对性的方案。