我很失望地发现我在 Haskell 中的 Hello World 可执行文件是 1.3 mb。这对我来说真的是不能接受的。难道我做错了什么?有什么借口可以让 hello world 可执行文件这么大?有没有合理的方法来减少这种情况?C 中的相同内容是 8 kb。
main = print "Hello, worlds"
你没有说哪个平台或哪个版本的GHC,所以我在这里做一些猜测。
默认情况下,GHC 不会剥离调试符号。在 Linux 上,您可以运行该strip
实用程序来删除这些。在任何平台上,您都可以编译以-optl-s
在链接期间自动剥离调试符号。
根据您所在的平台和 GHC 的版本,GHC 默认静态链接您调用的所有 Haskell 库和 Haskell 运行时系统本身(即垃圾收集器、线程调度程序、事务管理器、I/ O manager...) 如果您的平台支持,打开动态链接可能会导致可执行文件大小显着减小。
也可以看看
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句