我为 Raspberry Pi 交叉编译了更新版本的 node.js (v0.8.14)。将新版本与通过 apt-get 安装的节点 v0.6.19 进行比较,我很惊讶可执行文件的大小从 1.2Mb 跃升至 6.2Mb。
尺寸增加 5 倍是因为
- 较新版本的节点:v0.6.19 --> v0.6.19
- GNU/Linux 版本:2.6.26 --> 3.5.0
- 别的东西?
pi@raspberrypi ~ $ /usr/bin/node -v; ll -h /usr/bin/节点;文件 /usr/bin/节点 v0.6.19 -rwxr-xr-x 1 root root 1.2M Jun 30 18:55 /usr/bin/node /usr/bin/node:ELF 32 位 LSB 可执行文件,ARM,版本 1 (SYSV),动态链接(使用共享库), 对于 GNU/Linux 2.6.26,uildID[sha1]=0xb29e21fbf3e8a7db733fbcd0539e593264d88c94,剥离 pi@raspberrypi ~ $ ./node -v; ll -h ./节点;文件./节点 v0.8.14 -rwxr-xr-x 1 pi pi 6.2M Oct 28 20:43 ./node ./node:ELF 32 位 LSB 可执行文件,ARM,版本 1 (SYSV),动态链接(使用共享库), 对于 GNU/Linux 3.5.0,剥离