[Ecls-list] bug in COMPILE-FILE wrt current directory

Eric Marsden emarsden at laas.fr
Mon Dec 15 10:21:05 UTC 2003


Hi,

ECL is not able to compile a file that isn't in the current directory.

,----
| cd /tmp
| % mkdir foo
| % echo "(defun foo (x) (* x 2))" > foo/bar.lisp
| % ecl
| ECL (Embeddable Common-Lisp) 0.9d
| Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
| Copyright (C) 1993 Giuseppe Attardi
| Copyright (C) 2000 Juan J. Garcia-Ripoll
|         ECL is free software, and you are welcome to redistribute it
| under certain conditions; see file 'Copyright' for details.
| Type :h for Help.  Top level.
| > (compile-file "foo/bar.lisp")
| ;;; Loading "/usr/local/lib/ecl/cmp.fas"
| ;;; Loading "/usr/local/lib/ecl/sysfun.lsp"
| ;;; Compiling foo/bar.lisp.
| ;;; Compiling (DEFUN FOO ...).
| ;;; End of Pass 1.  
| ;;; Emitting code for FOO.
| ;;; Calling the C compiler... 
| "gcc -g -O2 -fomit-frame-pointer -mcpu=pentiumpro -march=pentiumpro -fPIC -fstrict-aliasing -Dlinux -O -I/usr/local/lib/ecl//h -w -c foo/bar.c -o foo/bar.o"foo/bar.c:3:21: foo/bar.h: No such file or directory
`----

Loading the compiler then adding "-I." to C::*CC-FLAGS* resolves this
problem. 

-- 
Eric Marsden                          <URL:http://www.laas.fr/~emarsden/>





More information about the ecl-devel mailing list