pkg-config is a helper tool used when compiling applications and libraries. It helps you insert the correct compiler options on the command line so an application can use
gcc -o test test.cpkg-config --libs --cflags glib-2.0
for instance, rather than hard-coding values on where to find glib (or other libraries). It is language-agnostic, so it can be used for defining the location of documentation tools, for instance.
The program is free software and licensed under the GPL version 2 or any later version (at your option).
pkg-config works on multiple platforms: Linux and other UNIX-like operating systems, Mac OS X and Windows. It does not require anything but a reasonably well working C compiler and a C library, but can use an installed glib if that is present. (A copy of recent glib2 is shipped together with pkg-config versions since 0.27, and this is sufficient for pkg-config to compile and work properly.)
The first implementation was written in shell, by James Henstridge. Later, it was rewritten in C by Havoc Pennington. It also grew an autoconf macro written by Tim Janik, later rewritten by Scott James Remnant. The current maintainers are Tollef Fog Heen firstname.lastname@example.org and Dan Nicholson email@example.com.
pkg-config is available from the git repository at git://anongit.freedesktop.org/pkg-config
Bugs can be filed in the Freedesktop.org bug tracker