libtcod is a free, fast, portable and uncomplicated API for roguelike developers providing an advanced true color console, input, and lots of other utilities frequently used in roguelikes.
If you are programming in C or C++ then Windows and MacOS binaries are available from the GitHub Releases page.
Various C/C++ sample projects are included within the repository which can be used as examples of various features.
Keep in mind that as a C++ library, you may need to distribute the appropriate runtime with your program such as the Visual Studio 2015 runtimes or else the program will fail to run.
For those who wish to program in Python you can install python-tcod using this installation guide. Once installed you can follow the Python 3 tutorial or you can find Python example scripts on the python-tcod repository.
A alternative version of the Python library (libtcodpy) exists in the binary downloads, but you should avoid using this version as it is not as well maintained.
You can clone with Git via the GitHub repository. You can then checkout a specific tag or get the in-development version from the master branch.
All compilation methods, currently including
SCons (Windows, Linux, MacOS) and Autotools (Linux, MacOS), are located within
the buildsys/
subdirectory.
SCons automatically downloads SDL2 and can be used on all platforms. Instructions are provided here. The current release builds are built using SCons.
Autotools is a common standard on Linux, and can be used for MacOS. Instructions are provided here.
The latest documentation is here. Currently it's very incomplete, so most people will want to read the 1.6.4 documentation instead. Python users should use the python-tcod documentation.
libtcod comes with a sample application, implementations of which are provided
in each of
C (samples_c.c),
C++ (samples_cpp.cpp),
and Python (samples_py.py).
This provides a decent overview of the basic features, in an interactive
fashion.
Each should be identical for the most part, so if you are using Windows,
downloading the pre-compiled binaries and running the included samples.exe
which is compiled from the C source code, should be representative of the other
versions.