On Wed, Nov 11, 2015 at 12:07 PM, Luís Oliveira <luismbo@gmail.com> wrote:
On Wed, Nov 11, 2015 at 4:39 PM, Mirko Vukovic <mirko.vukovic@gmail.com> wrote:

Issue: loading cffi-libffi, CFFI fresh from git repository

 Platform:
- 64-bit windows 7
- MSYS2 & MinGW64
- CCL1.11 or SBCL 1.30.0
- CFFI, fresh from git




> I downloaded from github and got qualified success:
> - At first loading I had to specify the path to ffi.h using cffi::*cc-flags*
> for the compilation to proceed

That's unexpected. Does that mean it failed to execute pkg-config? If
the compilation log doesn't yield any tips, perhaps you could tweak the
pkg-config-cflags definition (in cffi/grovel/grove.lisp) to add some
debugging output and see what's going on there?

Running in the shell

>pkg-config libffi --cflags

returns:

 -IE:/msys64/mingw64/lib/libffi-3.2.1/include

as expected.

I traced INVOKE, and UIOP/RUN-PROGRAM:RUN-PROGRAM.

The problem originates in reading the output of uiop/run-program:run-program.  Here are the trace outputs for (CFFI-TOOLCHAIN:INVOKE "pkg-config.exe" "--version"):

 <1 UIOP/RUN-PROGRAM:RUN-PROGRAM returned 3 values :
 <1      NIL
 <1      NIL
 <1      0
<0 CFFI-TOOLCHAIN:INVOKE returned 3 values :
<0      NIL
<0      NIL
<0      0

For some reason, the output of pkg-config is not being read.

I will play with CCL:run-program to get output out of it, and then trace this back to uiop and invoke.
 
Mirko