I was trying to build Geocode-glib on Ubuntu 12.04. But I was getting the following error while running ./configure -
configure: error: Package requirements (gio-2.0 >= 2.34 json-glib-1.0 >= 0.14 libsoup-2.4) were not met: Requested 'gio-2.0 >= 2.34' but version of GIO is 2.32.3 Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GEOCODE_CFLAGS and GEOCODE_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.
Initially I solved the above problem with jhbuild. I used -
jhbuild buildone glib geocode-glib
And jhbuild took care of the version mismatch problem by picking up the gio library from where jhbuild installed it.
I looked into the config.log file in the directory where jhbuild successfully built geocode-glib. It had set -
So if you want to build without jhbuild on Ubuntu 12.04, first get the latest glib from http://git.gnome.org/browse/glib and install it. Then you can either do -
./configure <the_flags_you_want_to_set> PKG_CONFIG_PATH='<where_you_installed_latest_glib>/gnome/lib/pkgconfig:<where_you_installed_latest_glib>/gnome/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig'
you can set the environment variables GEOCODE_CFLAGS and GEOCODE_LIBS -
./configure <the_flags_you_want_to_set> GEOCODE_CFLAGS='-pthread -l<where_you_installed_latest_glib>/gnome/include/glib-2.0 -I<where_you_installed_latest_glib>/gnome/lib/glib-2.0/include -I/usr/include/json-glib-1.0 -I/usr/include/libsoup-2.4 -I/usr/include/libxml2 ' GEOCODE_LIBS='-L<where_you_installed_latest_glib>/gnome/lib -ljson-glib-1.0 -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -lglib-2.0 '
Note that, the json-glib and libsoup libraries are taken from the default libraries that Ubuntu provides.