Chris Gorman | 23 May 16:32 2016

Re: build issues os x 10.6.8 ecl 16.1.2

Hello Daniel,

I tried to build from the git repository, but the issues still remain.

Issue 1) cannot use ABI=32, CFLAGS="-m32" and LDFLAGS="-m32" when building ecl for the host machine.  I
suspect the C compiler as configured cannot make anything but X86_64 binaries? (Os x 10.5 was 32 bit and
10.6 is 64.)  From the configure

./configure ABI=32 CFLAGS="-m32 -g -O2" LDFLAGS="-m32 -g -O2"             --prefix=`pwd`/ecl-android-host            
--disable-longdouble             --enable-libatomic=included
Switching to directory `build' to continue configuration.
checking build system type... x86_64-apple-darwin10.8.0
checking host system type... x86_64-apple-darwin10.8.0

This build dies on win32.S as below.  Removing the switches allows the ecl host binary to be built.

Issue 2) ecl cross compiled, as below, does not build at all.  The configure dies trying to guess how to define
a 32 bit word.  If I don't use the cross compiler, I can get the apple gcc to build it IIRC, but that defeats the purpose.

checking for assembler .type directive... .type	$1,#$2
checking for assembler .size directive... .size	$1,$2
checking for assembler local label prefix... L
checking for assembler byte directive... .byte
checking how to define a 32-bit word... configure: error: cannot determine how to define a 32-bit word
configure: error: Failed to configure the GMP library.

Thanks for your time, if you have any insights, please let me know.

On 2016-05-23, at 1:31 AM, ecl-devel-request@... wrote:

(Continue reading)

Chris Gorman | 23 May 01:23 2016

build issues os x 10.6.8 ecl 16.1.2

Hello All,

I'm new to ecl and am just hacking around with my end goal being a port of maxima, which runs on lisp, to an
android device.

I've been informed of the need to build ecl with the apple gcc, and have turned off macports gcc, thanks for
the tip.

To build the host version of ecl we pass -m32 to CFLAGS and LDFLAGS as well as setting the environment
variable ABI=32.  This causes my build to fail on win32.S, and my assembly is too poor to debug this.  The
output from the build follows.

	/bin/sh ./libtool    --mode=compile gcc -fPIC -fno-common -DHAVE_CONFIG_H -I.
-I/Users/chrisgorman/src/ecl-16.1.2/src/libffi  -I.
-I/Users/chrisgorman/src/ecl-16.1.2/src/libffi/include -Iinclude
-I/Users/chrisgorman/src/ecl-16.1.2/src/libffi/src  -I.
-I/Users/chrisgorman/src/ecl-16.1.2/src/libffi/include -Iinclude
-I/Users/chrisgorman/src/ecl-16.1.2/src/libffi/src -m32 -g -O2 -fPIC -fno-common -D_THREAD_SAFE
-MT src/x86/win32.lo -MD -MP -MF $depbase.Tpo -c -o src/x86/win32.lo
/Users/chrisgorman/src/ecl-16.1.2/src/libffi/src/x86/win32.S &&\
	mv -f $depbase.Tpo $depbase.Plo
libtool: compile:  gcc -fPIC -fno-common -DHAVE_CONFIG_H -I.
-I/Users/chrisgorman/src/ecl-16.1.2/src/libffi -I.
-I/Users/chrisgorman/src/ecl-16.1.2/src/libffi/include -Iinclude
-I/Users/chrisgorman/src/ecl-16.1.2/src/libffi/src -I.
-I/Users/chrisgorman/src/ecl-16.1.2/src/libffi/include -Iinclude
-I/Users/chrisgorman/src/ecl-16.1.2/src/libffi/src -m32 -g -O2 -fPIC -fno-common -D_THREAD_SAFE
-MT src/x86/win32.lo -MD -MP -MF src/x86/.deps/win32.Tpo -c
/Users/chrisgorman/src/ecl-16.1.2/src/libffi/src/x86/win32.S -o src/x86/win32.o
/Users/chrisgorman/src/ecl-16.1.2/src/libffi/src/x86/win32.S:1325:section difference
(Continue reading)

Daniel Kochmański | 23 Apr 10:18 2016

[website][new look]

Dear all,

I've updated the website. It's now powered by coleslaw, has an RSS feed
and it's easier to post news. Please let me know what do you think about
it :-)

Best regards,

PS. Sorry for doubleposting, my email configuration was messed up (not
sure if the first post reached the ml).


Daniel Kochmański ;; aka jackdaniel | Poznań, Poland
TurtleWare - Daniel Kochmański      |

"Be the change that you wish to see in the world." - Mahatma Gandhi

Enrique Gabriel Baquela | 15 Apr 16:38 2016

Problem installing ECL from sources in Fedora

Hi. I'm trying to install ECL 16.1.2 from source in Linux Fedora. I follow the steps indicated in :

gunzip -c ecl-16.1.2.tgz | tar xf -
$ cd ecl-16.1.2 $ ./configure --prefix=/usr/local
$ make
But the following error is generated:

cd /home/Descargas/ecl-16.1.2/src/../.git && ctags -o tags -R --langmap=c:+.d ../src || true
/bin/sh: línea 0: cd: /home/Descargas/ecl-16.1.2/src/../.git: No existe el fichero o el directorio
if test "xetags" != "x"; then \
srcfiles=`find /home/Descargas/ecl-16.1.2/src/c /home/Descargas/ecl-16.1.2/src/h -name '*.[chd]'` && \
etags --language=c    -o TAGS $srcfiles && \
etags --language=none -o TAGS --append \
      --regex='/ <at> \([-:*a-zA-z]+\)/\1/' \
      --regex='/ <at> (defun \([-:*a-zA-z]+\)/\1/' \
      $srcfiles; \
touch TAGS

Note: No existe el fichero o el directorio = The file or directory doesn't exist.

Can anybody help me?

Faré | 13 Apr 04:12 2016

segfault while testing lil

lil passes all tests for me on sbcl, ccl, allegro, clisp, but on ecl I get:

Detected access to an invalid or protected memory address.

Which precise test causes the segfault varies at each try.

To reproduce:

rlwrap ecl -eval "'(#.(require \"asdf\")#.(asdf:test-system :lil))"

:b shows failure either in
or in

and probably at slightly different places therein.

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics•
For followers of most ideologies (openly religious or not), toleration is
a concession of defeat. For libertarians, it is victory itself.

Tomas Hlavaty | 7 Apr 23:36 2016

error: 'aux_closure' undeclared (first use in this function)


I was curious how far would ecl get when compiling sbcl and found that
ecl seems to struggle with compiling local functions (error log bellow).

The problem is that the huge function parse-lambda-list being compiled
has a flet (scan-opt/key) inside, which is compiled into a separate C
function which does not see the other stuff, namely "volatile struct
ecl_cclosure aux_closure;" is missing in the separate C function for
flet scan-opt/key.

I could not find a reduced testcase but I guess this is a bug in the ecl



;;; Compiling src/compiler/parse-lambda-list.lisp.
;;; OPTIMIZE levels: Safety=2, Space=0, Speed=3, Debug=0
;;; Compiling (DEFUN LL-KWDS-RESTP ...).
;;; Compiling (DEFUN LL-KWDS-KEYP ...).
;;; Compiling (DEFUN LL-KWDS-ALLOWP ...).
;;; Compiling (DEFUN PARSE-LAMBDA-LIST ...).
;;; Compiling (DEFUN PARSE-DS-LAMBDA-LIST ...).
;;; Compiling (DEFUN PARSE-KEY-ARG-SPEC ...).
;;; Compiling (DEFUN MAKE-LAMBDA-LIST ...).
;;; Compiling (DEFUN DS-LAMBDA-LIST-MATCH-P ...).
;;; Compiling (DEFUN EMIT-DS-BIND-CHECK ...).
;;; Compiling (DEFUN EXPAND-DS-BIND ...).
;;; Compiling (DEFUN COMPILER-MACRO-ARGS ...).
;;; Compiling (DEFUN GET-DS-BIND-CONTEXT ...).
;;; Compiling (DEFUN DS-BIND-ERROR ...).
;;; Compiling (DEFUN CHECK-DS-BIND-KEYS ...).
;;; Compiling (DEFUN CHECK-DS-LIST ...).
;;; Compiling (DEFUN CHECK-DS-LIST/&REST ...).
;;; Compiling (DEFUN CHECK-DS-LIST/&KEY ...).
;;; Compiling (DEFUN CMACRO-CHECK-DS-LIST/&KEY ...).
;;; Compiling (DEFUN DS-GETF ...).
;;; Compiling (DEF!MACRO NAMED-DS-BIND ...).
;;; Compiling (DEFUN MAKE-MACRO-LAMBDA ...).
;;; Compiling (DEFUN STRIP-LAMBDA-LIST ...).
;;; End of Pass 1.
;;; Emitting code for LAMBDA-LIST-KEYWORD-MASK.
;;; Emitting code for LL-KWDS-RESTP.
;;; Emitting code for LL-KWDS-KEYP.
;;; Emitting code for LL-KWDS-ALLOWP.
;;; Emitting code for PARSE-LAMBDA-LIST.
;;; Emitting code for CROAK.
;;; Emitting code for DEFAULTP.
;;; Emitting code for NEED-BINDABLE.
;;; Emitting code for NEED-SYMBOL.
;;; Emitting code for NEED-ARG.
;;; Emitting code for REPORT-SUSPICIOUS.
;;; Emitting code for CHECK-SUSPICIOUS.
;;; Emitting code for PROBABLY-LL-KEYWORD-P.
;;; Emitting code for DESTRUCTURING-P.
;;; Emitting code for SCAN-OPT/KEY.
;;; Emitting code for PARSE-DS-LAMBDA-LIST.
;;; Emitting code for PARSE*.
;;; Emitting code for PARSE.
;;; Emitting code for #:G116.
;;; Emitting code for #:G117.
;;; Emitting code for WITH-DS-LAMBDA-LIST-PARTS.
;;; Emitting code for PARSE-OPTIONAL-ARG-SPEC.
;;; Emitting code for PARSE-KEY-ARG-SPEC.
;;; Emitting code for RECURSE.
;;; Emitting code for PROCESS-OPT/KEY.
;;; Emitting code for #:G175.
;;; Emitting code for MAKE-LAMBDA-LIST.
;;; Emitting code for UNPARSE-DS-LAMBDA-LIST.
;;; Emitting code for MEMOIZE.
;;; Emitting code for RECURSE.
;;; Emitting code for MAYBE-DEFAULT.
;;; Emitting code for PROCESS-OPT.
;;; Emitting code for #:G230.
;;; Emitting code for DS-LAMBDA-LIST-VARIABLES.
;;; Emitting code for SCAN.
;;; Emitting code for SUPPLIEDP-VAR.
;;; Emitting code for COPY.
;;; Emitting code for RECURSE.
;;; Emitting code for DS-LAMBDA-LIST-MATCH-P.
;;; Emitting code for RECURSE.
;;; Emitting code for DS-LAMBDA-LIST-MATCHER.
;;; Emitting code for EMIT-DS-LAMBDA-LIST-MATCH.
;;; Emitting code for EMIT-DS-BIND-CHECK.
;;; Emitting code for EXPAND-DS-BIND.
;;; Emitting code for DESCEND.
;;; Emitting code for GEN-TEST.
;;; Emitting code for BIND-IF.
;;; Emitting code for BIND-PAT.
;;; Emitting code for CAST/POP.
;;; Emitting code for COMPILER-MACRO-ARGS.
;;; Emitting code for GET-DS-BIND-CONTEXT.
;;; Emitting code for DS-BIND-ERROR.
;;; Emitting code for CHECK-DS-BIND-KEYS.
;;; Emitting code for CHECK-DS-LIST.
;;; Emitting code for CHECK-DS-LIST/&REST.
;;; Emitting code for CHECK-DS-LIST/&KEY.
;;; Emitting code for CMACRO-CHECK-DS-LIST/&KEY.
;;; Emitting code for DS-GETF.
;;; Emitting code for NAMED-DS-BIND.
;;; Emitting code for MAKE-MACRO-LAMBDA.
;;; Emitting code for #:G485.
;;; Emitting code for STRIP-LAMBDA-LIST.
;;; Emitting code for #:G489.
;;; Emitting code for #:G509.
In file included from /nix/store/4ha569nsijgnp7ywq89prpn6643h132m-ecl-16.1.2/include/ecl/ecl.h:84:0,
                 from /nix/store/4ha569nsijgnp7ywq89prpn6643h132m-ecl-16.1.2/include/ecl/ecl-cmp.h:29,
                 from obj/from-host/src/compiler/parse-lambda-list.c:5:
obj/from-host/src/compiler/parse-lambda-list.c: In function 'LC14scan_opt_key':
obj/from-host/src/compiler/parse-lambda-list.c:1222:15: error: 'aux_closure' undeclared (first
use in this function)
v5arg, v2what_kind)))) { goto L8; }
/nix/store/4ha569nsijgnp7ywq89prpn6643h132m-ecl-16.1.2/include/ecl/cons.h:27:27: note: in
definition of macro 'Null'
 #define Null(x)         ((x)==ECL_NIL)
obj/from-host/src/compiler/parse-lambda-list.c:1222:15: note: each undeclared identifier is
reported only once for each function it appears in
v5arg, v2what_kind)))) { goto L8; }
/nix/store/4ha569nsijgnp7ywq89prpn6643h132m-ecl-16.1.2/include/ecl/cons.h:27:27: note: in
definition of macro 'Null'
 #define Null(x)         ((x)==ECL_NIL)
obj/from-host/src/compiler/parse-lambda-list.c:1222:31: error: 'env0' undeclared (first use in
this function)
v5arg, v2what_kind)))) { goto L8; }
/nix/store/4ha569nsijgnp7ywq89prpn6643h132m-ecl-16.1.2/include/ecl/cons.h:27:27: note: in
definition of macro 'Null'
 #define Null(x)         ((x)==ECL_NIL)
;;; Internal error:
;;;   ** Error code 1 when executing
;;; (RUN-PROGRAM "gcc" ("-I."
"-I/nix/store/nnjvmplfmzpc22ls4p9h4c7c61rppzc5-libffi-3.2.1/include" "-D_GNU_SOURCE" ...))
Condition of type: SIMPLE-ERROR
couldn't compile "src/compiler/parse-lambda-list.lisp"

Available restarts:

1. (RESTART-TOPLEVEL) Go back to Top-Level REPL.

(Position #1305)

Didier Verna | 6 Apr 14:20 2016

[CFPart] ELS'16, 9th European Lisp Symposium, May 9-10, Kraków, Poland

		 ELS'16 - 9th European Lisp Symposium

		    Department of Computer Science
	       AGH University of Science and Technology
			    Kraków, Poland

			    May 9-10, 2016

		   In cooperation with: ACM SIGPLAN

	  Sponsored by EPITA, Franz Inc., LispWorks Ltd., IdEx
		 and Dept. of Computer Science AGH UST

Recent news:

- Full programme now available online
- Registration now open (early registration deadline: April 25)

The purpose of the European Lisp Symposium is to provide a forum for
the discussion and dissemination of all aspects of design,
implementation and application of any of the Lisp and Lisp-inspired
dialects, including Common Lisp, Scheme, Emacs Lisp, AutoLisp, ISLISP,
Dylan, Clojure, ACL2, ECMAScript, Racket, SKILL, Hop and so on. We
encourage everyone interested in Lisp to participate.

Keynote speakers:

- Pierre Castéran -- Program Proving with Coq
- Stephan Karpinski -- Julia: to Lisp or Not to Lisp?
- Francis Sergeraert -- Lexical Closures and Complexity

Important dates:

-   25 Apr 2016 Early registration deadline
- 9-10 May 2016 Symposium

Programme chair:
  Irène Durand, LaBRI, University of Bordeaux, France

Local chair:
  Michał Psota, Emergent Network Defense, Kraków, Poland

Programme committee:
  Antonio Leitao — INESC-ID / Instituto Superior Técnico, Universidade
    de Lisboa, Portugal
  Charlotte Heerzel — IMEC, Leuven, Belgium
  Christian Queinnec — University Pierre et Marie Curie, Paris 6, France
  Christophe Rhodes — Goldsmiths, University of London, United Kingdom
  Didier Verna  — EPITA Research and Development Laboratory, France
  Erick Gallesio — University of Nice-Sophia Antipolis, France
  François-René Rideau, Google, USA
  Giuseppe Attardi — University of Pisa, Italy
  Kent Pitman, HyperMeta Inc., USA
  Leonie Dreschler-Fischer — University of Hamburg, Germany
  Pascal Costanza — Intel Corporation, Belgium
  Robert Strandh — University of Bordeaux, France

Search Keywords:

#els2016, ELS 2016, ELS '16, European Lisp Symposium 2016,
European Lisp Symposium '16, 9th ELS, 9th European Lisp Symposium,
European Lisp Conference 2016, European Lisp Conference '16


Resistance is futile. You will be jazzimilated.

Lisp, Jazz, Aïkido:

Alexander Artemenko | 3 Apr 00:43 2016

Compiled program complaints on absent UIOP/OS and UIOP/PATHNAME


I have created a command line program:

I've tried to build it with sbcl and it worked fine.
But when I compiled it with ECL, I found
that right after running, it outputs following error:

Condition of type: SIMPLE-ERROR
The packages
  ((UIOP/OS . #<UIOP/OS package>) (UIOP/PATHNAME . #<UIOP/PATHNAME package>))
were referenced in compiled file
but have not been created
Available restarts:

1. (IGNORE) Ignore the error, and try the operation again

Top level in: #<process TOP-LEVEL>.

Tried ECL 16.1.4 on Ubuntu and ECL 16.0.0 on OSX.

What is the reason of this error, and how to fix it?

Alexander Artemenko (a.k.a. Svetlyak 40wt)
Fabrizio Fabbri | 31 Mar 17:15 2016

Native thread

Hi all,

quick question.


I’ve got my embedded ecl on a multi thread windows service.


Before doing anything I call cl_boot.


Then multiple request coming in served by different thread.


At this point I call ecl_import_current_thread and the evaluate some lisp code with cl_safe_eval with Cnil as environment.

After I call ecl_release_current_thread.


Please note that those are native thread not created with gc wrapper.


Are those evaluation happen in different lisp processes?


Kindest regards




Andreas Thiele | 25 Mar 09:24 2016

ECL on very small chips?



can I use ECL to write software for a chip without OS?


In my case I’d like to write software for NXP1769 which is ARM Cortex M3, 64kB Ram, 512kB Flash.





Robert P. Goldman | 23 Mar 21:40 2016

ASDF 3.1.7 has been released

ASDF 3.1.7 is a bugfix release, enhancing the 3.1.x ASDF series.  To the
best of our knowledge, it only fixes bugs, and should thus be a low-risk
upgrade for inclusion in implementations.

Thanks, as ever, to Faré for many fixes, and to other bug reporters and

See the Changelog (below) for a summary of changes.

  Bug fix and portability release:
  * Fix compilation on Genera.
  * Fix UIOP:FILE-EXISTS-P for dotfiles on CCL.
  * Fix infinite loop in source registry configuration that can occur
when there are cycles in the filesystem (typically caused by symlinks)
on some CL implementations.
  * Miscellaneous bug fixes.
  * Documentation improvements.
  * Restore original Makefile.

 -- Robert P. Goldman <rpgoldman@...>  Wed, 23 Mar 2016 09:34:14 -0500