Building Shoes

Please note: heya, kids, you don't need to build Shoes to try it out. See the DownloadShoes page for the latest builds for win32, osx and linux. Besides, Shoes is undergoing some intense hacking and things may not build and you won't even know what's the deal, guys.

First, here's a list of our prebuilt deps.

PlatformVideoSizeLink (cairo and pango versions)
WindowsYes16MBdeps-win32-1.4.14-1.18.4+vlc
Mac OS X (Intel)Yes29MBintel-1.4.10-1.19.0+vlc
Mac OS X (Intel)No9.3MBintel-1.4.10-1.19.0
Mac OS X (PPC)No14MBppc-1.4.10-1.19.0

Linux users should install dependencies through the distro's package manager.

To build Shoes, after you've got your environment set up, you basically just checkout Shoes and build it using Rake:

$ git clone git://github.com/why/shoes.git
$ cd shoes
$ rake

The Shoes distro will then be in the dist/ folder.

You can also use the following build options:

  • rake DEBUG=1 to get a build that outputs helpful debug info.
  • rake VIDEO=1 to get a build with video support.

Now, let's get your environment set up. See the sections for each platform below.

To install Git on Windows and OSX platforms check InstallingGit

Building on Windows

If you don't have Visual Studio and are looking for a great way to compile on Windows for free:

If, however, you're a pro and you have VS.NET 2003 installed, you can simply checkout from Github and run the Rakefile and it should sniff out your Visual Studio installation.

Building on OSX

Here's the quick way to use our prebuilt deps to get a fast nightly Universal build.

  1. Check out shoes using Git:
    git clone git://github.com/why/shoes.git
  2. cd shoes
  3. Download the appropriate deps tarball above.
  4. tar xzvf deps.tar.gz
  5. source use-deps
  6. rake

Your build will then be in Shoes.app. For now, to run it, you'll need to:

$ cd Shoes.app/Contents/MacOS
$ ./shoes samples/timer.rb

For full instructions on building Shoes and its dependencies all the way from scratch, see BuildingShoesOnOsx.

Building on Fedora

The following has been tested on Fedora 7, but should work on Fedora 6, CentOS v5 and RHEL5 as well:

$ git clone git://github.com/why/shoes.git ${SHOES_DIR}
$ cd ${SHOES_DIR}
$ sudo yum install -y giflib-devel cairo-devel libpixman-devel pango-devel libjpeg-devel gtk2-devel ruby-devel
$ rake

Building on Debian

  1. apt-get install libcairo2-dev libpixman-1-dev libpango1.0-dev libungif4-dev libjpeg62-dev libgtk2.0-dev ruby1.8-dev rake
  2. Run rake.

Building on Ubuntu

$ sudo apt-get install libcairo2-dev libpixman-1-dev libpango1.0-dev libungif4-dev libjpeg62-dev libgtk2.0-dev vlc libvlc0-dev ruby1.8-dev rake
$ git clone git://github.com/why/shoes.git
$ cd shoes
$ rake VIDEO=1

Or just use rake to build a binary for your processor architecture only.

To Run a script from the built shoes:

$ cd shoes/dist
$ ./shoes samples/timer.rb

To quickly see all samples, running the next one after the previous has quit:

$ for i in samples/*.rb; do echo $i; ./shoes $i; done