【发布时间】:2019-02-19 08:33:01
【问题描述】:
所以,我对 Emscripten 做了很多实验。我注意到的是,正在使用的 musl-libc 非常巨大……就像,真的巨大。一个简单的“你好,世界!”打印应用程序的大小超过 10kb...这远远不实用。
现在我该如何减少这种情况?到目前为止,我认为我可以使用-Os 和--closure 1。但后者仅真正适用于 JavaScript,因此不会影响 Wasm 输出。
我还能做什么?使用不同的 libc 实现,也许?我查看了 uClibc 和 Dietlibc 以及 Metallic。我还考虑寻找一个便宜的 - 文件大小方面的 - deflate 函数,这样我就可以传输 Wasm 二进制文件的 gzip 压缩版本。但到目前为止,这就是我所得到的。
有什么建议吗?我最后一次尝试是:
emcc test.cpp -o test.wasm -s WASM=1 -Os --closure 1
其中test.cpp 只是一个printf("Hello, world");。
【问题讨论】:
-
您也可以尝试使用 -Oz,但 Emscripten 可能不是针对嵌入式系统的好工具集。它是目前针对 Web 浏览器的工具集。
标签: c++ optimization emscripten webassembly