在CentOS系統下使用Golang進行項目打包,可以采用以下幾種方法:
-ldflags="-s -w"
去除符號表和DWARF調試信息,減小二進制文件體積。go build -ldflags="-s -w" main.go
-trimpath
標志去除編譯時的路徑信息。go build -trimpath -ldflags="-s -w" main.go
-gcflags
控制編譯器行為,例如更激進的優化級別。go build -gcflags="-l=4" main.go
sudo yum install upx
go build -ldflags="-s -w" main.go
upx --best --lzma main
go install mvdan.cc/garble@latest
garble -seed=random build -o app
go get github.com/go-bindata/go-bindata/...@latest
go-bindata -o bindata.go -pkg main assets/
go build -ldflags="-s -w" main
sudo yum install rpm-build
mkdir -p /rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
rpmbuild -ba /rpmbuild/SPECS/myapp.spec