Jason,

Looks like it can't find ffi.h.  I suppose that you should be able to point it to the correct location by changing the the form in the asd file from

(cffi-grovel:grovel-file "libffi" :pathname #+unix "libffi-unix")

to

(cffi-grovel:grovel-file "libffi" :pathname #+unix "libffi-unix" :cc-flags "-I/path/to/ffi/headers")

I know this since I have for a long time had to do this for any system that uses cffi-grovel, since I often have libraries in only somewhat standard places under OS X.  Since you are using common-lisp-controller, that means you are using a Linux, right?  If so, this should really work out of the box for you.  Whether the shortcoming is with FSBV or CFFI-GROVEL, I don't know (for instance, it would be nice if CFFI-GROVEL took a default cc-flags from the CFLAGS environment variable or something).

Hope this helps,
Zach


On Sat, Jun 20, 2009 at 10:07 AM, Jason Nielsen <jdn@math.carleton.ca> wrote:
Hello all,

I just git pulled all the new goodness in gsll, fsbv etc. but am getting
error messages building fsbv:

;
/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/init.fasl
written
; compilation finished in 0:00:00.004
; cc -m64 -fPIC -o
/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix
/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c
unhandled SIMPLE-ERROR in thread #<SB-THREAD:THREAD "initial thread"
RUNNING {10029DDD71}>:
  External process exited with code 1.
Command was: "cc" "-m64" "-fPIC" "-o"
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix"
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c"
Output was:
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 7: cannot find include file: <ffi.h>
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 40: undefined symbol: FFI_OK
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 45: undefined symbol: FFI_BAD_TYPEDEF
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 50: undefined symbol: FFI_BAD_ABI
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 61: undefined symbol: FFI_DEFAULT_ABI
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 66: undefined symbol: FFI_SYSV
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 71: undefined symbol: FFI_UNIX64
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 79: undefined symbol: ffi_abi
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 126: incomplete struct/union/enum _ffi_type: sizeof()
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 131: undefined struct/union member: size
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 136: undefined struct/union member: alignment
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 141: undefined struct/union member: type
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 146: undefined struct/union member: elements
"/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c",
line 397: warning: implicit function declaration: memset
cc: acomp failed for
/var/cache/common-lisp-controller/1000/sbcl/local/home/jdn/work/lisp/fsbv/libffi-unix.c

I have cffi 0.10.5 installed and its test suite passes.  I also have
libffi-dev installed in the usual place so I'm a bit confused.

Cheers,
Jason

_______________________________________________
Gsll-devel mailing list
Gsll-devel@common-lisp.net
http://common-lisp.net/cgi-bin/mailman/listinfo/gsll-devel