[Ecls-list] ECL and raspberry pi?

Sylvain Ageneau ageneau at gmail.com
Sat Jul 21 22:05:11 UTC 2012


On Jul 21, 2012, at 5:40 PM, H Durer <h.duerer at gmail.com> wrote:

> 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"
> 
> 

Hello,

I've seen the same problem on android (armeabi). Adding -DAO_REQUIRE_CAS to the CFLAGS fixes the build (although I think in this case libatomics_ops only emulates compare and swap instructions).

Regards,
Sylvain


> 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
> 
> ------------------------------------------------------------------------------
> Live Security Virtual Conference
> Exclusive live event will cover all the ways today's security and 
> threat landscape has changed and how IT managers can respond. Discussions 
> will include endpoint security, mobile security and the latest in malware 
> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> _______________________________________________
> Ecls-list mailing list
> Ecls-list at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ecls-list





More information about the ecl-devel mailing list