Dave Mielke <d...@mielke.cc> writes: > So, in fact, Speech Dispatcher's own .pc file isn't specifying the new > include > subdirectory.
There seems to be some disagreement about how to do pkg-config files for libraries. Some libraries do not add the library-specific subdirectory to the include path, and you are supposed to use it in the #include directive. A few quick examples that I find while looking around on my system are libao, gnutls, and libcurl. For instance, the relevant bits from libcurl's .pc file: prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include *SNIP* Cflags: -I${includedir} You're expected to use #include <curl/curl.h> Same goes for libao and gnutls. But the other convention includes the library-specific subdirectory in the include path. An example is GLib: prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include *SNIP* Cflags: -I${includedir}/glib-2.0 -I${libdir}/glib-2.0/include And you can just #include <glib.h>. I don't know which is standard. The first seems to be better, because it gives you namespaces for header names. My libfoo/types.h won't conflict with your libbar/types.h. With the 0.8 series of Speech Dispatcher, all of the headers moved down into /usr/include/speech-dispatcher. This is also when the pkg-config file was added. The first convention was adopted, either implicitly or explicitly. With version 0.8.4, they added the library-specific subdirectory back to the include path, so you could do #include <libspeechd.h> once again, just like you could do in versions 0.7.x and prior, when there was only one header and it was under /usr/include. -- Chris _______________________________________________ This message was sent via the BRLTTY mailing list. To post a message, send an e-mail to: BRLTTY@mielke.cc For general information, go to: http://mielke.cc/mailman/listinfo/brltty