golang可执行文件瘦身(缩小文件大小)

2023-06-28

起因

golang部署起来极其遍历,但有时候希望对可执行文件进行瘦身(缩小文件大小)

尝试

    情况允许情况下,交叉编译为32位
    删除不必要的符号表、调试信息
    尝试用对应平台的upx打压缩壳

解决

经过多次尝试,确定如下步骤效果最好(以windows 10下环境为例)

目标

package main

import (
"fmt"
) func main() {
fmt.Println("Hello World!")
}

步骤

    修改GO环境变量为 win32(可选)GOARCH=386``GOOS=windows
    编译无符号表和调试信息的可执行文件 go build -ldflags "-s -w"
    调用upx压缩 .\upx.exe -9 .\HiGo.exe

结果

处理前:64位=>1.97M 32位=>1.75M

处理后:64位=> 504K 32位=>479K

golang可执行文件瘦身(缩小文件大小)的相关教程结束。

《golang可执行文件瘦身(缩小文件大小).doc》

下载本文的Word格式文档,以方便收藏与打印。