给出一个简单的程序,如下面,你会如何:与Clozure Common Lisp的编译二进制
编译为一个单独的图像文件通过该实现加载,哪些命令行参数会吗用来加载它?
将其编译为可以按原样加载和运行的独立二进制文件。
注意:我只是在保存应用程序时才添加“:prepend-kernel t”,以便抛出下面的错误。
Error: value NIL is not of the expected type REAL. While executing: CCL::<-2, in process Initial(0).
你怎么会剿欢迎消息?
方案
(defun main() (format t "This is the program.")0)
编辑
讨厌回答我的问题的一部分,但我发现它没有少。
功能已被加载类型之后下列编译它:
(ccl:save-application "app")
这将创建的图像文件。通过将它传递给实现类型来加载它(注意:'ccl'二进制文件位于我的系统路径中);
ccl -I app
要运行一个顶级功能把它作为一个参数
ccl -I app --eval (main)
修正了错误。 此外,应用程序是按预期创建的,但是当我尝试加载exe时,错误消息告诉我“程序太大而不适合内存”。你之前遇到过这种情况吗?知道修复? – BlueBadger 2009-05-07 08:51:55
看到我的编辑,使用prepend-kernel将内核添加到文件 – 2009-05-07 08:57:25
我在Windows实现中测试了所有这些内容,并收到了所提及的各种错误。我只是在一台Linux机器上测试它,并且它按预期工作。谢谢。 – BlueBadger 2009-05-07 09:16:37