A pull request on what? CFFI, or hdf5-cffi? There are no open pull requests on the latter, and on CFFI, there are two, neither which seems relevant. The issue I cited ended with the recommendation to set the CC variable to h5cc. That works to get the includes taken care of, but it doesn't find the library. Moreover, I find it unsatisfactory to tell the user to do something before starting CL for the package to install, so if we can come up with a solution that's transparent to the user, it would be better.
One issue is a CFFI issue: (pkg-config-cflags "hdf5" :optional t) in hdf5-cffi/hdf5/grovel.lisp does not help cffi-grovel find the necessary .h files. It is a CFFI issue because I do get the right answer from the shell: pkg-config --cflags hdf5 -I/usr/include/hdf5/serial I am using the latest CFFI, not even released yet 4e74b15387ba Manual: remove statement that C structs cannot be passed by value Thoughts? Liam On Fri, Dec 4, 2015 at 6:45 PM, Luís Oliveira <luis...@gmail.com> wrote: > Hello Liam, > > IIUC, there's a pull request in progress to fix this. Alternatively, you can > use the latest CFFI release. > > Cheers, > Luís > > > On Fri, Dec 4, 2015, 21:19 Liam Healy <l...@healy.washington.dc.us> wrote: >> >> 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 >> >