8

我在 Ubuntu 机器上运行 SBCL。我想写一个小程序,我想送给一个只运行 Windows 的朋友。在我的机器上将它交叉编译成“独立”Windows程序(即通常的运行时+核心组合)的最快方法是什么?

4

3 回答 3

6

我怀疑在 VM 上安装 Windows 并在那里编译您的应用程序将是最快的方法。

于 2008-10-26T21:55:35.833 回答
6

SBCL 能够进行交叉编译,但由于在此过程中评估代码,您需要访问目标架构。Christophe Rhodes 在SBCL: a Sanely-Bootstrapable Common Lisp 中很好地解释了 SBCL 的构建处理。

如果您没有直接访问 Windows 机器的权限,我想您可以尝试在模拟器或虚拟机管理程序(QEMU、HVM、Xen 等)中使用 Wine(我希望这会失败)或ReactOS 。 .)。

于 2008-10-28T13:28:41.270 回答
2

内核特定于平台/版本组合。使用 Luís 的方法,或使用不同的 Lisp 分发,例如 CLisp。

不同的运行时支持程序之间绝对没有核心映像的二进制兼容性。即使是在不同时间从相同源构建的运行时也被视为不兼容。SBCL 手册

于 2008-10-27T08:11:02.457 回答