【问题标题】:Can executable size be optimized?可执行文件大小可以优化吗?
【发布时间】:2017-04-09 13:59:45
【问题描述】:

我在 Racket 中创建了以下代码的可执行文件(选择 Racket 而不是 GRacket):

#lang racket
(print "Hello World!")

它创建一个 3.6 mb 的 tgz 和一个 6.2 mb 的可执行文件。对于这个最简单的程序来说,这似乎非常大。由 Chicken Scheme 创建的具有相同代码 (print "Hello World!") 的可执行文件的大小仅为 16984 字节(16.6 kb)。

我想我在 Racket 中创建可执行文件时遗漏了一些东西(可能是一些优化设置)。如何使这个可执行文件更小?

【问题讨论】:

    标签: scheme racket executable chicken-scheme


    【解决方案1】:

    raco exe 的文档建议使用尽可能小的基础语言。在这种情况下,将#lang racket 替换为#lang racket/base。在我的机器(Linux,Racket 6.8)上,可执行文件大小从 6.6M 降至 988K。

    我能够通过首先运行解调器来进一步减小可执行文件的大小。我将程序保存为hello.rkt 并运行

    $ raco demod hello.rkt
    $ raco exe -o hello hello_rkt_merged.zo
    

    这会产生一个 277K 的可执行文件。

    【讨论】:

    猜你喜欢
    • 2016-02-06
    • 1970-01-01
    • 2010-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-01
    • 1970-01-01
    相关资源
    最近更新 更多