ruby-ffi by Wayne Meissner http://wiki.github.com/ffi/ffi == DESCRIPTION: Ruby-FFI is a ruby extension for programmatically loading dynamic libraries, binding functions within them, and calling those functions from Ruby code. Moreover, a Ruby-FFI extension works without changes on Ruby and JRuby. Discover why should you write your next extension using Ruby-FFI here[http://wiki.github.com/ffi/ffi/why-use-ffi]. == FEATURES/PROBLEMS: * It has a very intuitive DSL * It supports all C native types * It supports C structs (also nested), enums and global variables * It supports callbacks * It has smart methods to handle memory management of pointers and structs == SYNOPSIS: require 'ffi' module MyLib extend FFI::Library attach_function :puts, [ :string ], :int end MyLib.puts 'Hello boys using libc!' For less minimalistic and more sane examples you may look at: * the samples/ folder * the examples on the wiki[http://wiki.github.com/ffi/ffi] * the projects using FFI listed on this page[http://wiki.github.com/ffi/ffi/projects-using-ffi] == REQUIREMENTS: * You need a sane building environment in order to compile the extension. == DOWNLOAD/INSTALL: From rubyforge: [sudo] gem install ffi or from the git repository on github: git clone git://github.com/ffi/ffi.git cd ffi rake gem:install == CREDITS: Special thanks to: * Yehuda Katz * Luc Heinrich * Andrea Fazzi * Mike Dalessio * Hongli Lai * Evan Phoenix * Aman Gupta * Beoran == LICENSE: See LICENSE file.