During configuration of one project, I got the error:
checking for JSON... no
no
configure: error:
You must have JSON-GLib >= 0.14.0 development headers installed to build.
make: *** [config.status] Error 1The configure script contains such strings:
$ cat configure | grep json-glib { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-glib-1.0 >= 0.14.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "json-glib-1.0 >= 0.14.0") 2>&5 pkg_cv_JSON_CFLAGS=`$PKG_CONFIG --cflags "json-glib-1.0 >= 0.14.0" 2>/dev/null` { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-glib-1.0 >= 0.14.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "json-glib-1.0 >= 0.14.0") 2>&5 pkg_cv_JSON_LIBS=`$PKG_CONFIG --libs "json-glib-1.0 >= 0.14.0" 2>/dev/null` JSON_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "json-glib-1.0 >= 0.14.0" 2>&1` JSON_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "json-glib-1.0 >= 0.14.0" 2>&1`So I assumed I need package json-glib-1.0 but it seems to be installed:
$ apt-cache policy json-glib-1.0
libjson-glib-1.0-common: Installed: 0.16.2-1ubuntu1 Candidate: 0.16.2-1ubuntu1 Version table: *** 0.16.2-1ubuntu1 0 500 trusty/main amd64 Packages 100 /var/lib/dpkg/status
libjson-glib-1.0-0-dbg: Installed: (none) Candidate: 0.16.2-1ubuntu1 Version table: 0.16.2-1ubuntu1 0 500 trusty/main amd64 Packages
gir1.0-json-glib-1.0: Installed: (none) Candidate: (none) Version table:
gir1.2-json-glib-1.0: Installed: (none) Candidate: (none) Version table:
libjson-glib-1.0-0: Installed: 0.16.2-1ubuntu1 Candidate: 0.16.2-1ubuntu1 Version table: *** 0.16.2-1ubuntu1 0 500 trusty/main amd64 Packages 100 /var/lib/dpkg/statusDoes anyone know which package should I install? In the case it does matter, the source is Pidgin 3.0 development branch. Everything I found in Google is only a message about changing json-glib to 0.14 version.
As raaz suggested below, I downloaded, converted and installed RPM via alien. But the configure script produces the same error, even with the newest version of package.
$ dpkg -L json-glib-devel | grep include
/usr/include
/usr/include/json-glib-1.0
/usr/include/json-glib-1.0/json-glib
/usr/include/json-glib-1.0/json-glib/json-gvariant.h
/usr/include/json-glib-1.0/json-glib/json-builder.h
/usr/include/json-glib-1.0/json-glib/json-gobject.h
/usr/include/json-glib-1.0/json-glib/json-version.h
/usr/include/json-glib-1.0/json-glib/json-parser.h
/usr/include/json-glib-1.0/json-glib/json-reader.h
/usr/include/json-glib-1.0/json-glib/json-path.h
/usr/include/json-glib-1.0/json-glib/json-enum-types.h
/usr/include/json-glib-1.0/json-glib/json-glib.h
/usr/include/json-glib-1.0/json-glib/json-generator.h
/usr/include/json-glib-1.0/json-glib/json-types.h 2 Answers
The development files for json-glib can be installed through the normal software repositories, there's no need to get them from a different distro and converting packages!
sudo apt-get install libjson-glib-devWhen compiling an application and the configure script complains about missing dependencies, you'll need the development files (in 99% of the cases). In Ubuntu these are marked by a -dev at the end of the package name.
I have found it but in RPM format. You still have a chance . convert that rpm to deb.
Download RPM with
wget for 32-bit architecture, and
wget for 64-bit architecture.
Then convert that into deb with alien
sudo apt-get install alien
alien -k json-glib-devel-0.14.0-1.fc16.<architecture>.rpmThat will create a .DEB and you can install a DEB with
sudo dpkg -i filename.debHope that helps. Any doubts/problems let me know.
1