commit | 2149a04ca82dfa7568e010b875409c56cb7e6e55 | [log] [tgz] |
---|---|---|
author | Eric Haszlakiewicz <erh+git@nimenees.com> | Sat Apr 19 20:33:05 2014 -0400 |
committer | Eric Haszlakiewicz <erh+git@nimenees.com> | Sat Apr 19 20:33:05 2014 -0400 |
tree | 034f0e30b48df8d90a01d06671a6c8beb7e20a5d | |
parent | 92a7740e901cfa520fd0cb21117b11b17a78b07c [diff] |
Check for failures when allocating memory; return NULL and set errno=ENOMEM in a few of those cases. Thanks to Susant Sahani for pointing out some of these.
json-c
git
, gcc
and autotools
Home page for json-c: https://github.com/json-c/json-c/wiki
Caution: do NOT use sources from svn.metaparadigm.com, they are old.
Prerequisites:
gcc
, clang
, or another C compilerlibtool
If you're not using a release tarball, you'll also need:
autoconf
(autoreconf
)automake
Make sure you have a complete libtool
install, including libtoolize
.
json-c
GitHub repo: https://github.com/json-c/json-c
$ git clone https://github.com/json-c/json-c.git $ cd json-c $ sh autogen.sh
followed by
$ ./configure $ make $ make install
To build and run the test programs:
$ make check
libjson-c
If your system has pkgconfig
, then you can just add this to your makefile
:
CFLAGS += $(shell pkg-config --cflags json-c) LDFLAGS += $(shell pkg-config --libs json-c)
Without pkgconfig
, you would do something like this:
JSON_C_DIR=/path/to/json_c/install CFLAGS += -I$(JSON_C_DIR)/include/json-c LDFLAGS+= -L$(JSON_C_DIR)/lib -ljson-c