On Sun, Jul 31, 2011 at 7:19 PM, Philipp Marek <philipp@marek.priv.at> wrote:
Hello everybody,

I'm trying to get an executable via

       (c:build-program
               #P"./a.out"
               :epilogue-code '(progn (cl-user::main) (quit))
               :lisp-files files))

but when I start the executable all I get is

       Wrong number of arguments passed to function
               #<compiled-function SI:TOP-LEVEL>.
       No restarts available.

I do not get the same as you. Are you calling TOP-LEVEL from somewhere in your code?

> (let* ((c::*compile-in-constants* t) (x (compile-file "foo" :system-p t))) (c:build-program "foo-st" :lisp-files (list x) :epilogue-code '(progn (cl-user::main) (quit))))
[...]
#P"foo-st"
> (si::system "./foo-st")

HOLA 
0

Furthermore I'd like to ask about the frequent freezes via

       ;;; Stack overflow.
       ;;; Jumping to the outermost toplevel prompt

Is that something dependent on my setup, or is that a known ECL problem?

If it was a known problem I would have worked hard to solve it :-) Does it happen in ECL or in your standalone program? It may be that 1) the stack limits are too small (See http://ecls.sourceforge.net/new-manual/ch20.html) or 2) your program has an error and you did not set up a proper handler around the main routines in your program (lacking an error handler ECL may get crazy trying to restore from a problem)

Juanjo

--
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com