与 SBCL 交叉编译
我在 Ubuntu 机器上运行 SBCL。 我想编写一个小程序,送给只运行 Windows 的朋友。 在我的机器上将其交叉编译为“独立”Windows 程序(即通常的运行时+核心组合)的最快方法是什么?
I have SBCL running on a Ubuntu machine. I want to write a little program that I want to give to a friend who has only Windows running. What is the quickest way to cross-compile it on my machine into a "standalone" windows program (i.e. the usual runtime+core combination)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
SBCL 能够进行交叉编译,但由于在此过程中评估代码,您需要访问目标体系结构。 Christophe Rhodes 在 SBCL:a Sanely-Bootstrappable Common Lisp 中很好地解释了 SBCL 的构建过程
。
如果您无法直接访问 Windows 计算机,我想您可以尝试一下 Wine(我希望这会失败)或 ReactOS 位于模拟器或虚拟机管理程序(QEMU、HVM、Xen,凡是你能想到的......)中。
SBCL is able to do a cross-compilation, but due to code being evaluated during the process, you need access to the target architecture. SBCL's build processed is well explained by Christophe Rhodes in SBCL: a Sanely-Bootstrappable Common Lisp
.
If you don't have directly access to a Windows machine, I suppose you could give a try to Wine (I would expect this to fail) or ReactOS inside either an emulator or hypervisor (QEMU, HVM, Xen, you name it...).
我怀疑在虚拟机上安装 Windows 并在那里编译应用程序将是最快的方法。
I suspect that installing Windows on a VM and compiling your app there would be the quickest way.
核心特定于平台/版本组合。 使用 Luís 的方法,或者使用不同的 Lisp 进行分发,例如 CLisp。
Cores are specific to a platform/version combination. Use Luís's method, or distribute with a different Lisp, such as CLisp.