Hello Liam,
IIUC, there's a pull request in progress to fix this. Alternatively, you can use the latest CFFI release.
Cheers,
Luís
Debian has relocated hdf5 includes and libraries in serial/, which
means that hdf5-cffi does not compile. See this issue:
https://github.com/HDFGroup/hdf5-cffi/issues/61. I am trying to come
up with a CFFI solution. It seems like pkg-config-cflags should do the
job for me, as pkg-config is installed and does the right thing:
pkg-config --libs hdf5
-L/usr/lib/x86_64-linux-gnu/hdf5/serial -lhdf5
pkg-config --cflags hdf5
-I/usr/include/hdf5/serial
However, I put a line
(pkg-config-cflags "hdf5" :optional t)
in hfd5-cffi/hdf5/grovel.lisp and got nothing useful; it is clear it
is running pkg-config but the result never makes it into the cc arg
list.
(ql:quickload :hdf5-cffi)
To load "hdf5-cffi":
Load 1 ASDF system:
hdf5-cffi
; Loading "hdf5-cffi"
[package hdf5]; pkg-config hdf5 --cflags
-I/usr/include/hdf5/serial
; cc -m64 -o /home/healy/.cache/common-lisp/sbcl-1.2.15-linux-x64/home/healy/languages/lisp/hdf5-cffi/hdf5/grovel__grovel-tmpGHU3ALSV
-I/home/healy/languages/lisp/cffi/
/home/healy/.cache/common-lisp/sbcl-1.2.15-linux-x64/home/healy/languages/lisp/hdf5-cffi/hdf5/grovel__grovel.c
; /home/healy/.cache/common-lisp/sbcl-1.2.15-linux-x64/home/healy/languages/lisp/hdf5-cffi/hdf5/grovel__grovel
/home/healy/.cache/common-lisp/sbcl-1.2.15-linux-x64/home/healy/languages/lisp/hdf5-cffi/hdf5/grovel__grovel.grovel-tmp.lisp
; cc -m64 -o /home/healy/.cache/common-lisp/sbcl-1.2.15-linux-x64/home/healy/languages/lisp/hdf5-cffi/hdf5/h5-grovel__grovel-tmpAAURSO1
-I/home/healy/languages/lisp/cffi/
/home/healy/.cache/common-lisp/sbcl-1.2.15-linux-x64/home/healy/languages/lisp/hdf5-cffi/hdf5/h5-grovel__grovel.c
/home/healy/.cache/common-lisp/sbcl-1.2.15-linux-x64/home/healy/languages/lisp/hdf5-cffi/hdf5/h5-grovel__grovel.c:6:18:
fatal error: hdf5.h: No such file or directory
#include <hdf5.h>
^
compilation terminated.
Is this a problem of CFFI or dies the pkg-config-cflags form need to
be somewhere else?
Liam