Tuesday, January 31, 2012

building mesos..

This took me a while to figure out, maybe others have faster ways.. but I am posting it here so it might help others. This wfm as of Tue Jan 31 12:55:17 PST 2012 and commit 079614aea80cfc7282c2a80de6e84c896df776c0. These instructions are for 64-bit Ubuntu Lucid.
  • sudo apt-get install g++ git automake libtool libltdl-dev python-dev swig python-setuptools (not sure libltdl-dev is needed, but libtool suggested it, so I figured, why not!)
  • git clone git://git.apache.org/mesos.git
  • cd mesos
  • ./bootstrap
  • ./configure --with-webui \
    --with-java-home=/usr/lib/jvm/java-6-sun \
    --with-python-headers=/usr/include/python2.6 \
    --with-included-zookeeper \
    --prefix=/opt/mesos/mesos-079614
  • make -j 2 ... ... at some point this will fail while building zookeeper.
  • vi third_party/zookeeper-3.3.1/src/c/configure.ac
  • comment out lines 25 to 44
  • make -j 2 ... ... This will again fail with some libtool version compatibility problems. I don't know the auto* tools well enough to understand why. Posts on the mesos mailing list suggest autoreconf. That worked for me.
  • autoreconf -fi
  • make -j 2
and finally.. sucess.. I am sure there are more elegant and less black-magic ways of doing this, but I lack the knowledge and patience to figure them out. I hope this helps someone else trying to get a basic mesos build working.