blob: 771a07c28111a6427cb347af326f50fd90020c83 [file] [log] [blame]
.. _NDNS Installation Instructions:
NDNS Installation Instructions
==============================
Prerequisites
-------------
Install the `ndn-cxx library <https://named-data.net/doc/ndn-cxx/current/INSTALL.html>`_
and its prerequisites.
Optionally, to build manpages and API documentation the following additional dependencies
need to be installed:
- doxygen
- graphviz
- sphinx
- sphinxcontrib-doxylink
Build
-----
The following basic commands should be used to build NDNS on Ubuntu::
./waf configure
./waf
sudo ./waf install
Refer to ``./waf --help`` for more options that can be used during the ``configure`` stage.
Debug symbols
+++++++++++++
The default compiler flags include debug symbols in binaries. This should provide
more meaningful debugging information if NDNS or other tools happen to crash.
If this is undesirable, the default flags can be overridden to disable debug symbols.
The following example shows how to completely disable debug symbols and configure
NDNS to be installed into ``/usr`` with configuration in the ``/etc`` directory.
::
CXXFLAGS="-O2" ./waf configure --prefix=/usr --sysconfdir=/etc
./waf
sudo ./waf install
Building documentation
----------------------
NDNS tutorials and API documentation can be built using the following commands::
# Full set of documentation (tutorials + API) in build/docs
./waf docs
# Only tutorials in build/docs
./waf sphinx
# Only API docs in build/docs/doxygen
./waf doxygen
If ``sphinx-build`` is detected during ``./waf configure``, manpages will automatically
be built and installed during the normal build process (i.e., during ``./waf`` and
``./waf install``). By default, manpages will be installed into ``${PREFIX}/share/man``
(the default value for ``PREFIX`` is ``/usr/local``). This location can be changed
during the ``./waf configure`` stage using the ``--prefix``, ``--datarootdir``, or
``--mandir`` options.
For further details, please refer to ``./waf --help``.