gdal-ruby Build Status

Native bindings for GDAL/OGR for ruby. The GDAL repository contains ruby bindings in the swig/ruby directory, but they aren't compiled or installed with default installations of GDAL. In addition to not typically being installed, the GDAL build system places the files in a global ruby directory which can cause some problems since it's not the way other ruby libraries are typically installed. This gem simply turns the ruby bindings from the GDAL repo into a gem which can be easily managed like all of the other dependencies in your application. This simplifies the process of being able to switch between versions of ruby and use bundler to manage the extension. Also this gem enables you to install GDAL from the standard package managers that don't include the ruby bindings.


You will first need to install GDAL. There are several ways to install it, but the easiest way is using a package manager.


brew install gdal


sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable
sudo apt-get update
sudo apt-get install libgdal-dev

Add this line to your application's Gemfile:

gem 'gdal'

And then execute:

$ bundle

Or install it yourself as:

$ gem install gdal

Installing on Mac using The Framework way GDAL :

  • Download and install GDAL Complete dmg from kyngchaos.

  • Export path export PATH=/Library/Frameworks/GDAL.framework/Programs:$PATH in your bash or zsh profile

  • Verify the installation gdal-config --version

  • Install the gem using:

    $ gem install gdal -- --with-gdal-lib=/Library/Frameworks/GDAL.framework/unix/lib --with-gdal-includes=/Library/Frameworks/GDAL.framework/Versions/Current/Headers/


To test it out:

$ ruby -e "require 'gdal-ruby/ogr'; puts Gdal::Ogr.create_geometry_from_wkt('POINT (30 10)').export_to_json"

The best documentation for right now is the autotest code in the GDAL source tree. You can see various patterns for accessing files and using the OGR API from the autotest sources.


This gem is BSD. The .c and .cpp files in the ext/gdal-ruby directory are from GDAL. For more info, See ext/gdal-ruby/LICENSE or visit