之前写了一些 golang 的玩具,有的时候编译产物的体积比想象中更大,想确定是哪个依赖的原因也不太方便。琢磨了一下 elf 的格式,写了一个体积分析工具。顺便实现了类似 webpack bundle analyzer 那种的可视化界面,可以一层层查看不同 namespace 下的包,看起来直观一些。

项目地址: https://github.com/Zxilly/go-size-view
下载: https://github.com/Zxilly/go-size-view/releases/tag/0.1.0
因为依赖了一些 C++ 的东西,交叉编译不太方便,所以现在只编译了 linux 的。可以自己配依赖在其他平台上编译。
只能分析 elf64 格式的文件,PE 和 MachO 的支持要以后做了。