home - git - @ayo
= pgp = only used for releases
key - mit
7446 0D32 B808 10EB A9AF A2E9 6239 4C69 8C27 39FA

Cute decorative scissors, cutting through your code.

Ncdc Installation Instructions

General instructions

Building from source

In theory, the following instructions should work everywhere:

In practice, however, this does not always work and may not always be the prefered method of installation. On this page I try to collect instructions for each OS and distribution to make the installation process a bit easier for everyone.

If your system is missing from this page or if you’re still having trouble, don’t hesitate to join the support hub at adcs:// or send me a mail at Contributions to this page are of course highly welcomed as well. :-)

Statically linked binaries

If you just want to get ncdc running without going through the trouble of compiling and/or installing it, I also offer statically linked binaries:

To use them, simply download and extract the tarball, and then run ./ncdc on the command line.

The binaries include all the required dependencies and are linked against musl, so they should run on any Linux machine with the right architecture. If you want binaries for an other OS or architecture, please bug me and I’ll see what I can do.

System-specific instructions


An convenient installer is available for Android 2.3 and later, which makes use of the static binary.

Arch Linux

Ncdc is available on AUR, to install it you can use your favorite AUR-installer. If you don’t have a favorite, go for the manual approach:

tar -xf ncdc.tar.gz
cd ncdc
makepkg -si


There’s a package available for Fedora.


Ncdc is available in the Ports Collection. To install, make sure your collection is up-to-date and install the Port as any other:

cd /usr/ports/net-p2p/ncdc
make install clean


Ncdc is available in the Portage tree, so installation is trivial:

emerge ncdc

Mac OS X

Ncdc is available in Homebrew.


Compile & install from source:

doas pkg_add -i glib2
tar zxvf ncdc-1.24.tar.gz
cd ncdc-1.24
./configure NCURSES_CFLAGS="-lncurses" NCURSES_LIBS="-lncursesw"\
    CPPFLAGS="-I/usr/include -I/usr/local/include"\
    LDFLAGS="-L/usr/lib -L/usr/local/lib"
doas make install


This has been tested on OpenIndiana Build 151a Server, but may work on other versions as well. Compiling from source is your only option at the moment. First install some required packages (as root):

pkg install gcc-3 glib2 gnutls gettext header-math perl-510/extra

Then, fetch the ncdc source tarball, extract and build as follows:

tar -xf ncdc-1.24.tar.gz
cd ncdc-1.24
export PATH="$PATH:/usr/perl5/5.10.0/bin"
./configure --prefix=/usr LDFLAGS='-L/usr/gnu/lib -R/usr/gnu/lib'

And finally, to actually install ncdc, run make install as root. You can safely revert $PATH back to its previous value if you wish, it was only necessary in order for ./configure and make to find pod2man.


Get the package from PackMan: Select your openSUSE release and hit the “1 click install” button.

Ubuntu & Debian

If you’re running a recent enough release, you may be able to just do a

sudo apt install ncdc

Otherwise you may have to grab the package from a backport or use the static binaries above.

Alternatively, you can also try to compile ncdc from source. To do so, first install the required libraries:

sudo apt-get install libbz2-dev libsqlite3-dev libncurses5-dev\
  libncursesw5-dev libglib2.0-dev libgnutls-dev zlib1g-dev

Then run the following commands to download and install ncdc:

tar -xf ncdc-1.24.tar.gz
cd ncdc-1.24
./configure --prefix=/usr
sudo make install

Windows (Cygwin)

Surprisingly enough, ncdc can be used even on Windows, thanks to Cygwin. If you haven’t done so already, get setup.exe from the Cygwin website and use it to install the following packages:

Then open a Cygwin terminal and run the following commands to download, compile, and install ncdc:

tar -xf ncdc-1.24.tar.gz
cd ncdc-1.24
./configure --prefix=/usr
make install