@hackage tcod-haskell0.1.0.0

Bindings to libtcod roguelike engine

tcod-haskell

These are midlevel bindings for libtcod.

Compile

Needed system libraries:

  • autoconf
  • make
  • gcc
  • gcc-c++
  • alsa-lib-devel
  • audiofile-devel
  • mesa-libGL-devel
  • mesa-libGLU-devel
  • mesa-libEGL-devel
  • mesa-libGLES-devel
  • libXext-devel
  • libX11-devel
  • libXi-devel
  • libXrandr-devel
  • libXrender-devel
  • dbus-devel
  • libXScrnSaver-devel
  • libusb-devel
  • pulseaudio-libs-devel
  • libXinerama-devel
  • libXcursor-devel
  • systemd-devel
  • SDL2-devel

Steps:

  1. Install stack or cabal+GHC from https://www.haskell.org/downloads
  2. Run stack install --flags tcod-haskell:examples or cabal sandbox new && cabal install --flags=examples
  3. Copy libtcod/build/autotools/.libs/libtcod.so.0.0.0 somewhere, where shared libraries can be found by executables (e.x. /usr/local/lib/libtcod.so.0 and run ldconfig). Or install package with libtcod of version 1.6.3 for your system.
  4. Run example tcod-haskell-sample01 in root folder of repo (or copy terminal.png to execution directory).

Roadmap

Binded headers:

  • bresenham.h
  • bsp.h
  • color_types.h
  • color.h
  • console_types.h
  • console.h
  • fov_types.h
  • fov.h
  • heightmap.h
  • image.h
  • lex.h - not binding as useless.
  • libtcod_int.h - not binding as useless.
  • libtcod_portability.h - not binding as useless.
  • libtcod_utility.h - not binding as useless.
  • libtcod_version.h
  • libtcod.h - not binding as useless.
  • list.h
  • mersenne_types.h
  • mersenne.h
  • mouse_types.h
  • mouse.h
  • namegen.h
  • noise_defaults.h
  • noise.h
  • path.h
  • parser.h - not binding as useless.
  • sys.h
  • tree.h
  • textfield.h - TODO
  • wrappers.h - not binding as useless.
  • zip.h - TODO
  • gui/*.h - TODO