SDL binding for Céu
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
include/sdl (>) small adjusts Mar 17, 2018
HISTORY (^) v0.8 Jun 25, 2014
Makefile (*) fix previous commit Jul 15, 2018

Céu-SDL supports the development of SDL applications in the programming language Céu:

SDL is a cross-platform software development library designed to provide a hardware abstraction layer to computer multimedia hardware components.

Céu is a reactive language that aims to offer a higher-level and safer alternative to C:

Céu-SDL empowers the development of SDL applications with the following extensions:

  • Awaiting events in direct/sequential style.
  • Parallel lines of execution with
    • safe abortion;
    • deterministic behavior (in contrast with threads).
  • Asynchronous loops for heavy computations.
  • Seamless integration with standard SDL (e.g., SDL_RenderFillRect, SDL_RenderPresent, etc).


Install SDL:

$ sudo apt-get install libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl2-net-dev libsdl2-gfx-dev

(Assuming a Linux/Ubuntu machine.)

Install Céu:

Clone Céu-SDL:

$ git clone
$ cd ceu-sdl/
$ git checkout v0.30

Compile and Run

Edit the Makefile to point to your ceu directory and then run make:

$ gedit Makefile
$ make

If necessary, configure the variables in the Makefile. The default example moves a rectangle on screen.

To compile and run another application, run make and set CEU_SRC:

$ make CEU_SRC=<path-to-ceu-application>


The samples/ directory contains a number of examples.

To run all examples one after another, run make samples:

$ make samples