hello all
I am new to ACL, so accept my apologies if what I'm going to say is trivial.
Under LINUX, I have generated a stand-alone executable out of an ACL 6.2
project by means of the following bit of code (thanks Kevin Layer of Franz
for his suggestions):
-------------------------------------------------------------------
(proclaim '(optimize (speed 3) (safety 3) (space 3) (debug 3)))
(compile-file "structs.cl") (compile-file "input.cl")
(compile-file "common.cl") (compile-file "preprocess.cl")
(compile-file "experiments.cl") (compile-file "nogoods2.cl")
(compile-file "expdesign2.cl") (compile-file "ffcdb.cl")
(compile-file "heuristics.cl") (compile-file "arcconsistency.cl")
(compile-file "expdesign.cl") (compile-file "pgenerator.cl")
(compile-file "dataanalysis.cl") (compile-file "execution.cl")
(compile-file "optimization.cl")
(generate-executable
"epilitis"
'("structs.fasl" "input.fasl" "common.fasl"
"preprocess.fasl" "ffcdb.fasl" "heuristics.fasl"
"experiments.fasl" "arcconsistency.fasl" "expdesign.fasl"
"nogoods2.fasl" "pgenerator.fasl" "dataanalysis.fasl"
"expdesign2.fasl" "execution.fasl" "optimization.fasl"
:loop
:seq2
)
)
(exit)
-------------------------------------------------------------------
But now and then the application, given a particularly large problem, exits
like this:
-------------------------------------------------------------------
Error: An allocation request for 40 bytes caused tenuring and a need
for 262144 more bytes of heap. The operating system will not
make the space available because of a lack of swap space or some
other operating system imposed limit or memory mapping collision.
[condition type: STORAGE-CONDITION]
-------------------------------------------------------------------
...whereas this does NOT happen if I launch it from within the lisp
interactive shell.
There is no limit imposed by the UNIX shell, and tweaking the parameters of
(proclaim '(optimize ...)) won't do.
Any ideas about what is going on? Am I neglecting some parameters
specifying the amount of memory/heap space/stack the executable can
allocate?
thank you,
Claudio