On Sun, 2014-11-23 at 13:08 +0000, Luís Oliveira wrote: > On Sun, Nov 23, 2014 at 12:27 AM, Stelian Ionescu <sione...@cddr.org> wrote: > > Most often than not, but I know of cases where the headers for the > > current version of a library are put directly under /usr/include, > > whereas the older versions are in subdirectories of /usr/include and > > require pkg-config, and therefore if pkg-config is not used, the CFFI > > code will be compiled against the wrong(newer) library. IIRC, this is > > the case with BerkeleyDB and Postgres's libpq on some distributions. > > OK, that makes sense. In this particular case, though, we're not > specifying any version: > > #+linux > (pkg-flags "libffi") > > How are versions specified in pkg-config and how do they relate with > the major version in the .so file name? (I googled a little bit for > examples but couldn't find any.)
There's no standard across libraries, only conventions for specific libraries; e.g. my openSUSE has libpng-1.2 in /usr/lib64/pkgconfig/libpng12.pc and linbpng-1.6 in /usr/lib64/pkgconfig/libpng16.pc Some libraries(like libpng) break API at every major release and the pkg-config names contain the package version, others break API more seldom and the pkg-config version is a slowly increasing serial number unrelated to the release version; also the pkg-config name may or may not contain dots and dashes, etc... -- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur.
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Cffi-devel mailing list Cffi-devel@common-lisp.net http://mailman.common-lisp.net/cgi-bin/mailman/listinfo/cffi-devel