I'm sure this is a fairly simple problem. I have a very simple configure.ac file which I am using to just learn how autoconf & pkg-config work together. The confgure.ac
file looks like:
AC_PREREQ(2.61)
AC_INIT(autoconf_test, 1.0, [email protected])
PKG_CHECK_MODULES(libusbmuxd, libusbmuxd >= 0.1.4)
I can then execute autoconf from the command line and it does produce a configure script. However, when I run the configure script, I get the following error:
./configure: line 1618: syntax error near unexpected token `libusbmuxd,'
./configure: line 1618: `PKG_CHECK_MODULES(libusbmuxd, libusbmuxd >= 0.1.4)'
If I use the pkg-config program from the command line to check to see whether it can find this library, it succeeds.
/usr/lib/pkgconfig $pkg-config --libs --cflags --modversion libusbmuxd
1.0.7
-I/usr/local/Cellar/usbmuxd/1.0.7/include -L/usr/local/Cellar/usbmuxd/1.0.7/lib -lusbmuxd
So, it seems clear that for some reason the PGK_CHECK_MODULE
macro cannot be located and I am not sure why.
This probably isn't OS specific, but I am using Mac OS X 10.6.8.
When you are bootstrapping (ie, running autoreconf), aclocal is unable to find pkg.m4. This is because pkg-config was either not installed or has been installed somewhere that aclocal does not know about. (ie, it was installed with a different prefix than automake.) There is actually a large school of thought that says that the best way to use pkg-config with the autotools is to not use it. If you look through the autoconf mailing list archive, you will see this debated ad-nauseum. I'm not saying that you should avoid using pkg-config (although I do believe it is best to do so), but please be aware that many people to recommend avoiding it completely.