[Ecls-list] ECL and raspberry pi?

H Durer h.duerer at gmail.com
Sat Jul 21 20:40:20 UTC 2012


Hi.

Now that I finally have a raspberry pi, I was going to try to do some
lisp on it.
I installed the raspbian distribution which is based on Debian
(wheezy).  ecl is the only common lisp that seems to be available.
But the version delivered seems to be non-unicode.  Compiling a
project that requires flex-streams I get an error:

| In function COERCE, the value of variable is
|         65533
| which is not of expected type (INTEGER -128 127)
| Available restarts:
|
| 1. (ABORT) ABORT
| 2. (TRY-RECOMPILING) Try recompiling ascii
| 3. (RETRY) Retry compiling component ("flexi-streams" "ascii").
| 4. (ACCEPT) Continue, treating compiling component ("flexi-streams"
"ascii") as having been successful.
| 5. (ABORT) Give up on "drakma"
| 6. (RESTART-DEBUGGER) Go back to debugger level 1.
| 7. (ABORT) ABORT
| 8. (TRY-RECOMPILING) Try recompiling ascii
| 9. (RETRY) Retry compiling component ("flexi-streams" "ascii").
| 10. (ACCEPT) Continue, treating compiling component ("flexi-streams"
"ascii") as having been successful.
| 11. (ABORT) Give up on "drakma"
| 12. (RESTART-TOPLEVEL) Go back to Top-Level REPL.
|
| Broken at SI:BYTECODES. [Evaluation of: (QUICKLISP-CLIENT:QUICKLOAD
'DRAKMA)] In: #<process TOP-LEVEL>.


That seem to be happening in a make-array with element type
char-code-integer from which I deduce that the ecl (11.1.1) does not
support unicode.

I tried compiling a recent version from source but without any flags I
get an error about unsupported ARM codes being used:

| ranlib libatomic_ops.a
| if gcc         -fPIC -DHAVE_CONFIG_H -I.
-I/home/holly/projects/ecl.git/src/gc/libatomic_ops-1.2/src -I.
-fPIC -D_GNU_SOURCE -| D_FILE_OFFSET_BITS=64 -g -O2 -fPIC
-D_THREAD_SAFE -DNDEBUG -MT atomic_ops_stack.o -MD -MP -MF
".deps/atomic_ops_stack.Tpo" -c -o atomic_ops_stack.o
/home/holly/projects/ecl.git/src/gc/libatomic_ops-1.2/src/atomic_ops_stack.c;
\
| then mv -f ".deps/atomic_ops_stack.Tpo" ".deps/atomic_ops_stack.Po";
else rm -f ".deps/atomic_ops_stack.Tpo"; exit 1; fi
| /tmp/cclGSoMc.s: Assembler messages:
| /tmp/cclGSoMc.s:179: Error: selected processor does not support ARM
mode `ldrexd r2,[r0]'
| /tmp/cclGSoMc.s:190: Error: selected processor does not support ARM
mode `strexd r3,r6,[r0]'

and when compiling with CFLAGS=-mcpu=arm1176jzf-s as suggested
somewhere, I get an error

| .../ecl.git/src/c/threads/semaphore.d:21:2: error: #error "Cannot
implement semaphores without AO_fetch_and_add_full"


I have never used ecl and haven't had to compile anything from source
for years so I am stuck here.
Any ideas?

Thanks a lot.
    Holger




More information about the ecl-devel mailing list