Random thoughts about IT

How to compile Storm 0.8.2 on Mac OS X

with 3 comments

Here are a set of instructions to build and package from source either the storm-0.8.2.jar or the complete (with all dependencies). I assume packaging later versions will be similar, just be careful about dependencies versions.

First off, let’s clarify that this is not required if your goal is just to install a Storm cluster or to develop topologies: for that it’s easier to download a package from the Storm download page and follow the Storm installation instructions.

I am executing this on Mac OS X 10.7.5 with Java 1.7.0

First install some building tools:

brew install automake
brew install libtool
brew install pkg-config

We also need Leiningen 1.x, a Clojure build and packaging tool (Storm compilation process currently fails with Leiningen 2.x):

cd /usr/local/
brew versions leiningen
git checkout a9b361d /usr/local/Library/Formula/leiningen.rb
brew install leiningen

Surprisingly, compiling the Storm code also requires to have a Zero MQ server installed (ahem…), so, well, let’s install that. Storm documentation specifically mentions Zero MQ 2.1.7:

cd /usr/local/
brew versions zmq
git checkout ed41f79 Library/Formula/zeromq.rb
brew install zmq

We also need jzmq. Storm 0.8.2 comes with jzmq-2.1.0.jar, so let’s install that version:

cd wherever/makes/sense
git clone
cd jzmq/
git checkout v2.1.0
sudo make install

We’re finally ready to get our hands on Storm itself:

cd wherever/makes/sense
git clone
git checkout 0.8.2

If you just need to build the jar, run this:

lein jar

You can also create the full release package like this:

chmod 744 bin/

Et voilà. Happy hacking 🙂


Written by Svend

September 4, 2013 at 4:43 pm

Posted in Uncategorized

Tagged with , ,

3 Responses

Subscribe to comments with RSS.

  1. Can similar process be used on MacOSX 10.6 having Java6?


    December 25, 2013 at 5:29 pm

    • Hmmm, I guess it might work. Please do try and let us know!


      December 25, 2013 at 8:07 pm

  2. Your instructions work for java version “1.6.0_65” and also storm 0.9 (now located/mirrored at Thanks!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: