blob: 34430439e95f8b5b1a5869fefaa696df50d099d7 [file] [log] [blame]
Vince Lehmanb722b102014-08-24 16:33:49 -05001NLSR Installation Instructions
2==============================
3
4.. toctree::
5..
6
7Prerequisites
8-------------
9
Davide Pesavento1e9faf12023-01-21 16:04:50 -050010- `NFD <https://github.com/named-data/NFD>`__ and its dependencies.
Vince Lehmanb722b102014-08-24 16:33:49 -050011
Davide Pesavento1e9faf12023-01-21 16:04:50 -050012 Check out the `documentation <https://docs.named-data.net/NFD/current/INSTALL.html>`__
13 for detailed installation and running instructions.
Vince Lehmanb722b102014-08-24 16:33:49 -050014
Davide Pesavento1e9faf12023-01-21 16:04:50 -050015- PSync library [optional but recommended, enabled by default]
Ashlesh Gawande415676b2016-12-22 00:26:23 -060016
Davide Pesaventoede59632022-08-26 20:35:44 -040017 Download the PSync library and build it according to the instructions available at
18 https://github.com/named-data/PSync#build
Ashlesh Gawande32ec3fd2018-07-18 13:42:32 -050019
Davide Pesavento5110a8a2023-08-20 21:42:11 -040020- ChronoSync library [optional, deprecated]
Ashlesh Gawande30d96e42021-03-21 19:15:33 -070021
Davide Pesavento5110a8a2023-08-20 21:42:11 -040022 For testing purposes, NLSR can be optionally built with ChronoSync support. Download
Davide Pesaventoede59632022-08-26 20:35:44 -040023 the ChronoSync library and build it according to the instructions available at
24 https://github.com/named-data/ChronoSync#build
Ashlesh Gawande30d96e42021-03-21 19:15:33 -070025
Davide Pesavento1e9faf12023-01-21 16:04:50 -050026- SVS library [optional]
Varun Patil7d2d6892022-10-14 12:50:30 -070027
28 NLSR can be used with State Vector Sync as the underlying Sync protocol. Download
29 the ndn-svs library and build it according to the instructions available at
30 https://github.com/named-data/ndn-svs#installation
31
Davide Pesavento5110a8a2023-08-20 21:42:11 -040032Note that at least one Sync library must be enabled.
Davide Pesavento1e9faf12023-01-21 16:04:50 -050033
Vince Lehmanb722b102014-08-24 16:33:49 -050034Build
35-----
36
Davide Pesaventoede59632022-08-26 20:35:44 -040037Execute the following commands to build NLSR:
38
39.. code-block:: sh
Vince Lehmanb722b102014-08-24 16:33:49 -050040
41 ./waf configure
42 ./waf
43 sudo ./waf install
44
Davide Pesaventof6be8e32020-04-30 16:06:03 -040045Refer to ``./waf --help`` for more options that can be used during the configure stage and
Alexander Afanasyev7decbbf2014-08-24 21:29:01 -070046how to properly configure NLSR.
Vince Lehmanb722b102014-08-24 16:33:49 -050047
Davide Pesaventoede59632022-08-26 20:35:44 -040048If your pkgconfig path is not set properly, you can do the following before running ``./waf
49configure``:
50
51.. code-block:: sh
Vince Lehmanb722b102014-08-24 16:33:49 -050052
Davide Pesaventof6be8e32020-04-30 16:06:03 -040053 export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
54 # or
Vince Lehman59dfac32015-04-29 12:37:26 -050055 export PKG_CONFIG_PATH=/path/to/pkgconfig/on/your/machine
Ashlesh Gawande30d96e42021-03-21 19:15:33 -070056
57If ChronoSync support is desired, NLSR needs to be configured with the following option:
58
Davide Pesaventoede59632022-08-26 20:35:44 -040059.. code-block:: sh
60
61 ./waf configure --with-chronosync