blob: 04d7c3bad7067a7344be764beb30233f08960b70 [file] [log] [blame] [view]
ndn-cpp-dev: A dev version of Named Data Networking client library for C++
===========================================================================
Prerequisites
-------------
(These are prerequisites to build ndn-cpp-dev. To do development of ndn-cpp-dev code and update the build system,
see Development Prerequisites.)
Required:
* libcrypto
* libsqlite3
* libcrypto++
* boost libraries (>= 1.48)
* OSX Security framework (on OSX platform only)
Following are the detailed steps for each platform to install the prerequisites.
* Mac OS X 10.7.3, Mac OS X 10.8.4
Install Xcode.
In Xcode Preferences > Downloads, install "Command Line Tools".
* Mac OS X 10.9
Install Xcode. (Xcode on OS X 10.9 seems to already have the Command Line Tools.)
If using macports, dependencies can be installed using the following commands:
sudo port install boost sqlite3 libcryptopp
* Ubuntu 12.04, Ubuntu 13.10
In a terminal, enter:
sudo apt-get install build-essential
# For Ubuntu 12.04
sudo apt-get install libboost1.48-all-dev
# For Ubuntu 13.10
sudo apt-get install libboost-all-dev
sudo apt-get install libssl-dev libsqlite3-dev libcrypto++-dev
* Windows Cygwin
Cygwin is tested on Windows 7 64-bit with the "Devel" packages selected to install at the top level of the
cygwin installer. This includes libcrypto and libsqlite3.
Build
-----
(These are instructions to build ndn-cpp-dev. To do development of ndn-cpp-dev
code and update the build system, see Development.)
To build in a terminal, change directory to the ndn-cpp-dev root. Enter:
./waf configure
./waf
sudo ./waf install
This makes and installs the following items:
* ``<LIBPATH>/libndn-cpp-dev.*``: static and dynamic NDN C++ libraries
* ``<LIBPATH>/pkgconfig/libndn-cpp-dev.pc``: pkgconfig file storing all neccessary flags
to build against the library. For example, if pkgconfig or pkgconf package is
installed and PKG_CONFIG_PATH is configured properly (or ``<LIBPATH>/pkgconfig`` is a
default path), ``pkgconfig --libs --clflags libndn-cpp-dev`` will return all necessary
compile and link flags for the library.
* ``<BINPATH>/tlvdump``: a simple tool to dump contents of TLV-formatted data
* ``<BINPATH>/ndncatchunks3``: a simplified equivalent to ndncatchunks2 in NDNx package
* ``<BINPATH>/ndnputchunks3``: a simplified equivalent to ndnputchunks2 in NDNx package
If configured with tests: ``./waf configure --with-tests``), the above commands will
also produce:
* ``build/tests/unit-tests``: A tool to run unit tests for the library
Documentation
-------------
To make documentation, enter:
./waf doxygen
This will produce doxygen API code documentation in:
* build/doc/html
Supported platforms
-------------------
(to be confirmed)
ndn-cpp-dev is tested on the following platforms:
* Ubuntu 12.04 (64 bit and 32 bit)
* Ubuntu 13.10 (64 bit and 32 bit)
* Mac OS X 10.8
* Mac OS X 10.9
Development Prerequisites
-------------------------
These steps are only needed to do development of ndn-cpp-dev code and update the build system.
First follow the Prerequisites above for your platforms.
* Mac OS X 10.7.3, Mac OS X 10.8.4, Mac OS X 10.9
Install MacPorts from http://www.macports.org/install.php
In a terminal, enter:
sudo port install doxygen
* Ubuntu 12.04 (64 bit and 32 bit), Ubuntu 13.04 (64 bit)
In a terminal, enter:
sudo apt-get install doxygen
Development
-----------
Follow Development Prerequisites above for your platform.