本文由golang教程欄目給大家介紹如何使用 UPX 來壓縮 Go 的可執(zhí)行文件,希望對需要的朋友有所幫助!
通常使用 go 構(gòu)建的可執(zhí)行文件有點大,但總是希望生成一個較小的可執(zhí)行文件。
在這篇文章中,將介紹幾種減小可執(zhí)行文件大小的方法。
最終效果是可執(zhí)行文件的大小將比正常生成的小得多。
通常構(gòu)建的文件具有以下大小。
Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 12/14/2019 9:47 AM 1974272 main-ori.exe
添加構(gòu)建標(biāo)志
使用 go 工具構(gòu)建項目時可以添加兩個 ld 參數(shù),它們是 -s 和 -w。
go build -ldflags="-s -w" main.go
-s:省略符號表和調(diào)試信息。 大多數(shù)情況下,在生產(chǎn)環(huán)境中不需要它們。
-w: 省略 DWARF 消息。
這兩個參數(shù)不會影響程序的執(zhí)行,但它會減少可執(zhí)行文件的大小。
Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 12/14/2019 9:48 AM 1427968 main-flag.exe
UPX 壓縮
upx 是一個二進制壓縮工具。它可用于壓縮二進制文件和進一步減少文件大小。
壓縮文件的命令是:
upx main.exe
壓縮后,文件大小變小了很多。
Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 12/14/2019 9:52 AM 495616 main.exe
快樂編碼。
原文地址:https://www.pixelstech.net/article/1576288399-GoLang-to-build-smaller-executable-file
譯文地址:https://learnku.com/go/t/63386