Question about cffi-libffi on win32

Stas Boukarev stassats at gmail.com
Mon Sep 16 12:39:54 UTC 2013


Rujia Liu <rujia.liu at gmail.com> writes:

> Dear all,
>
> I'm using SBCL 1.1.4.0.mswin.1288-90ab477. I want to use cffi-libffi but
> failed. Here is what I did:
>
> 1. First, download libffi_3.0.6-1_win32.zip from
> http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/ and drop
> libff-5.dll to a place that SBCL can find.
> 2. use quicklisp to load the cffi-libffi system. However, I got the
> following error:
>
> * (ql:quickload "cffi-libffi")
> To load "cffi-libffi":
>   Load 1 ASDF system:
>     cffi-libffi
> ; Loading "cffi-libffi"
> ; c:/msys/1.0/bin/gcc.exe -m32 -I/Documents and
> Settings/eryiju/quicklisp/dists/
> quicklisp/software/cffi_0.11.2/ -o C:\Documents and
> Settings\eryiju\Application
> Data\common-lisp\cache\sbcl-1.1.4.0.mswin.1288-90ab477-win-x86\C\Documents
> and S
> ettings\eryiju\quicklisp\dists\quicklisp\software\cffi_0.11.2\libffi\libffi-win3
> 2.exe C:\Documents and Settings\eryiju\Application
> Data\common-lisp\cache\sbcl-1
> .1.4.0.mswin.1288-90ab477-win-x86\C\Documents and
> Settings\eryiju\quicklisp\dist
> s\quicklisp\software\cffi_0.11.2\libffi\libffi-win32.c
> note: SBCL on windows can't redirect output.
>
> debugger invoked on a SIMPLE-ERROR in thread #<THREAD "main thread" RUNNING
> {23D
> A8AC1}>: External process exited with code 1.
> Command was: "c:/msys/1.0/bin/gcc.exe" "-m32" "-I/Documents and
> Settings/eryiju/
> quicklisp/dists/quicklisp/software/cffi_0.11.2/" "-o" "C:\\Documents and
> Setting
> s\\eryiju\\Application
> Data\\common-lisp\\cache\\sbcl-1.1.4.0.mswin.1288-90ab477
> -win-x86\\C\\Documents and
> Settings\\eryiju\\quicklisp\\dists\\quicklisp\\softwa
> re\\cffi_0.11.2\\libffi\\libffi-win32.exe" "C:\\Documents and
> Settings\\eryiju\\
> Application
> Data\\common-lisp\\cache\\sbcl-1.1.4.0.mswin.1288-90ab477-win-x86\\C
> \\Documents and
> Settings\\eryiju\\quicklisp\\dists\\quicklisp\\software\\cffi_0.
> 11.2\\libffi\\libffi-win32.c"
> Output was:
>
>
> Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
>
> restarts (invokable by number or by possibly-abbreviated name):
>   0: [RETRY ] Retry #<STANDARD-CLASS CFFI-GROVEL::PROCESS-OP> on
> #<GROVEL-FILE "
> cffi-libffi" "libffi" "libffi">.
>   1: [ACCEPT] Continue, treating #<STANDARD-CLASS CFFI-GROVEL::PROCESS-OP>
> on #<
> GROVEL-FILE "cffi-libffi" "libffi" "libffi"> as having been successful.
>   2: [ABORT ] Give up on "cffi-libffi"
>   3:          Exit debugger, returning to top level.
>
> (CFFI-GROVEL::INVOKE #<unavailable argument> "-m32" "-I/Documents and
> Settings/e
> ryiju/quicklisp/dists/quicklisp/software/cffi_0.11.2/" "-o" "C:\\Documents
> and S
> ettings\\eryiju\\Application
> Data\\common-lisp\\cache\\sbcl-1.1.4.0.mswin.1288-9
> 0ab477-win-x86\\C\\Documents and
> Settings\\eryiju\\quicklisp\\dists\\quicklisp\\
> software\\cffi_0.11.2\\libffi\\libffi-win32.exe" "C:\\Documents and
> Settings\\er
> yiju\\Application
> Data\\common-lisp\\cache\\sbcl-1.1.4.0.mswin.1288-90ab477-win-
> x86\\C\\Documents and
> Settings\\eryiju\\quicklisp\\dists\\quicklisp\\software\\c
> ffi_0.11.2\\libffi\\libffi-win32.c")
> 0]
>
> I noticed that .....\cffi_0.11.2\libffi\libffi-win32.c does NOT exist, even
> in git repository.
> What should I do now?
>
> BTW: How to change gcc's location? I used grep in cffi's directory but
> can't find it.
> My MinGW was installed somewhere else, I had to copy it to c:/msys/1.0/bin
> so that cffi-libffi can find it (I saw a "can't fork" error message before
> doing so).
There's an unmerged pull request which might be of interest:
https://github.com/cffi/cffi/pull/30

-- 
With best regards, Stas.



More information about the cffi-devel mailing list