<div class="gmail_quote"><br>On Wed, Oct 24, 2012 at 10:24 AM, Ralph Möritz <span dir="ltr"><<a href="mailto:ralph.moeritz@outlook.com" target="_blank">ralph.moeritz@outlook.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I just downloaded MKCL-1.1.0 & tried compiling a small "Hello, world" program on Windows without success. Here's what I tried:<br>
<br>
1. Add "C:\Program Files\MKCL 1.1\bin" to my PATH.<br>
2. Run `mkcl -not-fasl-p -compile hello.lisp` which produces lisp.o<br>
3. Now what? I've tried to link using `gcc -o hello.exe hello.o -lmkcl_1.1.0` which produces an error:<br></blockquote><div><br>Such a direct call to gcc cannot work with a ".o" produced by the MKCL compiler (see [1] below as to why).<br>
</div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
I've also tried `mkcl -o hello.exe -link hello.o` which produces the following error:<br>
<br>
build-program failed: Unknown keyword :LISP-FILES<br>
<br></blockquote><div><br>That instead should have worked! You have quite clearly hit a bug in MKCL-1.1.0.<br>But you see, that access from the command line to the #'compiler:build-program facility<br>is somewhat seldom used and has bit-rot without me noticing. I will fix it in the coming<br>
hours and that fix should be part of MKCL-1.1.1 (to be released soon I expect).<br><br>Let me stress the point that such a use of MKCL on the command line, although supported,<br>is somewhat atypical. Like other Common Lisp systems, MKCL is mostly used through a REPL,<br>
either MKCL's own default REPL (somewhat basic) or the REPL of SLIME (a much nicer one).<br>Also, producing a full OS native executable is a fairly rare event since the typical user of<br>MKCL will be building his CL world by loading (fasl or source) libraries at the REPL prompt.<br>
Were you knowingly testing this command line option or did you hit on it more or less by chance?<br>In the second case I could suggest you some easy alternatives depending on your goal.<br><br>Cheers,<br><br>Jean-Claude Beaudoin<br>
<br><br>[1] The ".o" object files produced by the MKCL native compiler are not quite basic C object<br>files, they contain hooks that need to be called with a specific context at load time in order<br>for its object code to integrate itself properly with the rest of the Common Lisp runtime system.<br>
The compiler:build-program facility provides the framework for this to happen properly.<br><br></div></div>