go 打包到不同平台windows linux运行程序 压缩程序体积
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash

·
转自:https://studygolang.com/articles/16579
1、Mac下编译Linux, Windows平台的64位可执行程序:
$ CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build test.go
$ CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build test.go
2、Linux下编译Mac, Windows平台的64位可执行程序:
$ CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build test.go
$ CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build test.go
3、Windows下编译Mac, Linux平台的64位可执行程序:
$ SET CGO_ENABLED=0SET GOOS=darwin3 SET GOARCH=amd64 go build test.go
$ SET CGO_ENABLED=0 SET GOOS=linux SET GOARCH=amd64 go build test.go
注:如果编译web等工程项目,直接cd到工程目录下直接执行以上命令
GOOS:目标可执行程序运行操作系统,支持 darwin,freebsd,linux,windows
GOARCH:目标可执行程序操作系统构架,包括 386,amd64,arm
转自:https://www.jianshu.com/p/cd3c766b893c
压缩可执行文件
-
首先加上编译参数
-ldflags
$ go build -ldflags '-w -s' $ ls -lh -rwxr-xr-x 1 gangan staff 2.5M Aug 18 00:45 etcd-cli -rw-r--r-- 1 gangan staff 456B Aug 18 00:34 main.go
可以发现小了近1MB
-
使用upx压缩,Linux、Mac和Win都有,这里以Mac为例
$ brew install upx $ upx etcd-cli # 此处省略压缩时的打印... $ ls -lh -rwxr-xr-x 1 gangan staff 897K Aug 18 00:49 etcd-cli -rw-r--r-- 1 gangan staff 456B Aug 18 00:34 main.go
OK,可执行文件从3.4MB压缩到了897K,效果还是很明显的,有需要的赶紧试试吧。




A beautiful web dashboard for Linux
最近提交(Master分支:1 个月前 )
186a802e
added ecosystem file for PM2 5 年前
5def40a3
Add host customization support for the NodeJS version 5 年前

新一代开源开发者平台 GitCode,通过集成代码托管服务、代码仓库以及可信赖的开源组件库,让开发者可以在云端进行代码托管和开发。旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。
更多推荐
所有评论(0)