Issue #308: improve the build instructions in README.md to include the exact commands to run for installing prerequisites, as mentioned earlier on Issue #308.
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -72,7 +72,6 @@
|
|||||||
*.dmg
|
*.dmg
|
||||||
*.ipa
|
*.ipa
|
||||||
|
|
||||||
/INSTALL
|
|
||||||
.deps/
|
.deps/
|
||||||
.libs/
|
.libs/
|
||||||
/aclocal.m4
|
/aclocal.m4
|
||||||
|
|||||||
55
README.md
55
README.md
@@ -14,7 +14,9 @@ Building on Unix with `git`, `gcc` and `autotools`
|
|||||||
|
|
||||||
Home page for json-c: https://github.com/json-c/json-c/wiki
|
Home page for json-c: https://github.com/json-c/json-c/wiki
|
||||||
|
|
||||||
Prerequisites:
|
### Prerequisites:
|
||||||
|
|
||||||
|
See also the "Installing prerequisites" section below.
|
||||||
|
|
||||||
- `gcc`, `clang`, or another C compiler
|
- `gcc`, `clang`, or another C compiler
|
||||||
- `libtool>=2.2.6b`
|
- `libtool>=2.2.6b`
|
||||||
@@ -26,6 +28,8 @@ If you're not using a release tarball, you'll also need:
|
|||||||
|
|
||||||
Make sure you have a complete `libtool` install, including `libtoolize`.
|
Make sure you have a complete `libtool` install, including `libtoolize`.
|
||||||
|
|
||||||
|
### Build instructions:
|
||||||
|
|
||||||
`json-c` GitHub repo: https://github.com/json-c/json-c
|
`json-c` GitHub repo: https://github.com/json-c/json-c
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
@@ -66,3 +70,52 @@ JSON_C_DIR=/path/to/json_c/install
|
|||||||
CFLAGS += -I$(JSON_C_DIR)/include/json-c
|
CFLAGS += -I$(JSON_C_DIR)/include/json-c
|
||||||
LDFLAGS+= -L$(JSON_C_DIR)/lib -ljson-c
|
LDFLAGS+= -L$(JSON_C_DIR)/lib -ljson-c
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
Install prerequisites
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
If you are on a relatively modern system, you'll likely be able to install
|
||||||
|
the prerequisites using your OS's packaging system.
|
||||||
|
|
||||||
|
### Install using apt (e.g. Ubuntu 16.04.2 LTS)
|
||||||
|
```sh
|
||||||
|
sudo apt install git
|
||||||
|
sudo apt install autoconf automake libtool
|
||||||
|
sudo apt install valgrind # optional
|
||||||
|
```
|
||||||
|
|
||||||
|
Then start from the "git clone" command, above.
|
||||||
|
|
||||||
|
### Manually install and build autoconf, automake and libtool
|
||||||
|
|
||||||
|
For older OS's that don't have up-to-date version of the packages will
|
||||||
|
require a bit more work. For example, CentOS release 5.11, etc...
|
||||||
|
|
||||||
|
```sh
|
||||||
|
curl -O http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
|
||||||
|
curl -O http://ftp.gnu.org/gnu/automake/automake-1.15.tar.gz
|
||||||
|
curl -O http://ftp.gnu.org/gnu/libtool/libtool-2.2.6b.tar.gz
|
||||||
|
|
||||||
|
tar xzf autoconf-2.69.tar.gz
|
||||||
|
tar xzf automake-1.15.tar.gz
|
||||||
|
tar xzf libtool-2.2.6b.tar.gz
|
||||||
|
|
||||||
|
export PATH=${HOME}/ac_install/bin:$PATH
|
||||||
|
|
||||||
|
(cd autoconf-2.69 && \
|
||||||
|
./configure --prefix ${HOME}/ac_install && \
|
||||||
|
make && \
|
||||||
|
make install)
|
||||||
|
|
||||||
|
(cd automake-1.15 && \
|
||||||
|
./configure --prefix ${HOME}/ac_install && \
|
||||||
|
make && \
|
||||||
|
make install)
|
||||||
|
|
||||||
|
(cd libtool-2.2.6b && \
|
||||||
|
./configure --prefix ${HOME}/ac_install && \
|
||||||
|
make && \
|
||||||
|
make install)
|
||||||
|
```
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user