Skip to content
This repository has been archived by the owner on May 18, 2023. It is now read-only.

Install NDN dependencies on Ubuntu Server 18.04

Jeff Thompson edited this page May 5, 2021 · 13 revisions

Ubuntu Server 18.04

Prerequisites

To install the prerequisites, in a terminal, enter:

sudo apt install build-essential git libssl-dev libsqlite3-dev libpcap-dev pkg-config libprotobuf-dev protobuf-compiler liblog4cxx-dev clang python-dev python3-dev

Boost

The version of Boost provided by apt is too old, so we need to build it. In a terminal, enter:

cd ~
wget https://boostorg.jfrog.io/artifactory/main/release/1.71.0/source/boost_1_71_0.tar.gz
tar xvfz boost_1_71_0.tar.gz
cd boost_1_71_0
./bootstrap.sh --with-toolset=clang --with-libraries=all
./b2
sudo ./b2 install

NDN-CXX and NFD

To build and install NDN-CXX and the patched version of NFD, in a terminal, enter the following which builds using clang:

cd ~
git clone https://github.com/named-data/ndn-cxx
cd ndn-cxx
git checkout 5149350bb437201e59b5d541568ce86e91993034
./waf configure --check-cxx-compiler=clang++ --boost-includes=/usr/local/include --boost-libs=/usr/local/lib
./waf
sudo ./waf install

cd ~
git clone --recursive https://github.com/operantnetworks/nfd-ind
cd nfd-ind
git checkout patched
./waf configure --check-cxx-compiler=clang++ --boost-includes=/usr/local/include --boost-libs=/usr/local/lib
./waf
sudo ./waf install
sudo cp /usr/local/etc/ndn/nfd.conf.sample /usr/local/etc/ndn/nfd.conf

NDN-IND

To build and install NDN-IND, enter the following, which builds using clang:

cd ~
git clone https://github.com/operantnetworks/ndn-ind
cd ndn-ind
CC=clang CXX=clang++ ./configure
make
sudo make install

ldconfig

The usual library directories are not on the load path by default. The following needs to be run once to configure the system:

sudo sh -c "echo /usr/local/lib64 >> /etc/ld.so.conf"
sudo sh -c "echo /usr/local/lib >> /etc/ld.so.conf"
sudo ldconfig