Ruby/SDL 2.1.1 Ohbayashi Ippei

1 What's Ruby/SDL

Ruby/SDL is the ruby extension library to use SDL. SDL(Simple DirectMedia Layer) is a cross-platform multimedia library

designed to provide fast access to the graphics framebuffer and audio

device. See if you want to know SDL in detail.

2 Platform This library supports Linux on X,Win32,FreeBSD and BeOS.

3 Library Needed

Ruby/SDL needs Ruby and SDL and optionally uses SDL_image,SDL_mixer, SDL_ttf, SGE, OpenGL and SMPEG.

Indispensable Ruby SDL

Optional SDL_mixer SDL_ttf SDL_image SGE SMPEG SDLSKK


install on FreeBSD Use Port.

install on Linux (1)install Ruby

See Ruby's document and install.

(2)install SDL

Extract SDL's source and run './configure' with '--disable-pthreads'
On Linux using pthread with Ruby/SDL makes problem.
You can avoid this problem by other way (Please see rubysdl_doc.en.rd).
And run 'make','make install'.

(3)install SGE

Run 'make' and 'make install'.

(4)install SDL_mixer, SDL_ttf, SDL_image, SMPEG and SDLSKK

See documents of these libraries and install them .

(5)install this extension library,Ruby/SDL

Run 'ruby extconf.rb','make' and 'make install'.

(6) (Mac OS X user only) install rsdl

Run 'gem install rsdl'.
rsdl is a wrapper of Ruby interpreter. This wrapper
prepares Cocoa framework before running the interpreter.

5 USE Ruby/SDL

Write "require 'sdl'" in your Ruby script.
If your system is OS X, you must use rsdl command 
as an interpreter instead of ruby command.

See following documents and samples if you want to know the detail.

  Ruby/SDL samples.In some script, you have to prepare data such as
  "sample.wav" and "sample.mpg".
  Simple reference manual
document of SDL
  This is in SDL archive.
  Please read this when you want to know what does't describe
  these documents.

6 OpenGL

You can use OpenGL with this library.

(1) Setup OpenGL and SDL.
(2) Install ruby-opengl (
(3) Run "ruby extconf.rb", "make", and "make install"
(4) Write "require 'sdl'; require 'opengl'"  in your script.

We use OpenGL through ruby-opengl.
Please see SDL's document,OpenGL document and sample/testgl.rb .


This library is distributed under GNU LGPL version 2.1 or later,
which can be found in the file "LICENSE".
But samples, the Ruby scripts sample/*.rb, are not under LGPL, and
you can use their files freely.

8 Thanks

Thanks to ...
Tamura : some patches and advertising
Akinori MUSHA : Porting on FreeBSD
Danny van Bruggen : some ideas are from his library "RUDL"
akira yamada : patch of SDL::TTF, making packages of Vine and Debian.
Wayne Conrad : some patches
Christian Neukirchen, Kent Dahl : send a patch
Keffin Barnaby : some patches
Rorien Dunn, Dennis Ranke, Keita Urashima : bug reports and useful information
Yusuke TABATA : introduce me into SDL world
SDLdoc Japanese translation project : base of Ruby/SDL's reference manual
Hara Yutaka: Sample TrueTypeFont
Members of #sdl-fan-jp @ FriendChat: bug reports and advices
Cyross: Windows version maintainance


Some functions, especially SDL::MPEG methods and pallete handling methods,
are not tested.

Please send comments and bug reports to the author.
Author's mail address: [email protected]