High-level C++ bindings for the Kodo network coding library
C++ Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
examples Update license Mar 21, 2018
src/kodocpp Update license Mar 21, 2018
test Update license Mar 21, 2018
.gitignore Use new waf (#31) Apr 3, 2017
LICENSE.rst Update license Mar 21, 2018
NEWS.rst Update license Mar 21, 2018
README.rst Update README.rst Mar 9, 2016
buildbot.py Use new waf (#31) Apr 3, 2017
config.py Use new waf (#31) Apr 3, 2017
resolve.json Update resolve.json May 18, 2017
waf Use new waf (#31) Apr 3, 2017
wscript Preparing to create tag 8.0.0 May 18, 2017



A valid Kodo license is required if you wish to use this project.

Please request a license by filling out the license request form.

Kodo is available under a research- and education-friendly license, you can see the details here.

If you try to configure without a valid license, then you will get an error!


This repository contains high-level C++ bindings for the Kodo erasure coding library. The bindings provide convenient access to the basic functionality of Kodo, such as encoding and decoding data. The examples folder contains sample applications showing the usage of the high-level C++ API.


If you have any questions or suggestions about this library, please contact us at our developer mailing list (hosted at Google Groups):


To get started, see the manual here: http://docs.steinwurf.com

Quick Start

If you already installed a C++11 compiler, git and python on your system, then you can clone this repository to a suitable folder:

git clone git@github.com:steinwurf/kodo-cpp.git

Configure and build the project:

cd kodo-cpp
python waf configure
python waf build

Run the unit tests:

python waf --run_tests

Special Options

With the enable_codecs option, you can configure kodo-cpp to only enable some desired codecs and disable all others. For example:

python waf configure --enable_codecs=full_vector

Run python waf --help to list the available codecs. You can even select multiple codecs with a comma-separated list:

python waf configure --enable_codecs=full_vector,seed,sparse_seed