golang可執行文件瘦身(縮小文件大小)

原由

golang部署起來極其遍歷,但有時候但願對可執行文件進行瘦身(縮小文件大小)git

嘗試

  1. 狀況容許狀況下,交叉編譯爲32位
  2. 刪除沒必要要的符號表、調試信息
  3. 嘗試用對應平臺的upx打壓縮殼

解決

通過屢次嘗試,肯定以下步驟效果最好(以windows 10下環境爲例)github

目標

package main

import (
    "fmt"
)

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

步驟

  1. 修改GO環境變量爲 win32(可選)GOARCH=386``GOOS=windows
  2. 編譯無符號表和調試信息的可執行文件 go build -ldflags "-s -w"
  3. 調用upx壓縮 .\upx.exe -9 .\HiGo.exe

結果

處理前:64位=>1.97M 32位=>1.75M
處理後:64位=> 504K 32位=>479Kgolang

相關文章
相關標籤/搜索