Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Warning

The code base for this project is under heavy and recent development. Please expect nothing from it for the time being; there is not yet a version that we consider "stable".

...

  • GNU Make (Anything reasonably recent)
  • GNU g++ (>= 4.4)
  • git (>= 1.6.0)
  • Perl (Anything reasonably recent)
    • For mergedeps.pl, which automatically inserts included headers in source files into the make dependencies.
  • Python 2.6, epydoc 
  • Boost
    • If you're having issues with Boost on Ubuntu, check boost ticket #3844.
  • pcre
  • Doxygen 1.7.2
  • protocol buffers

...

cd ramcloud; make

CentOS Issues

CentOS 5.5 has ancient default versions of g++ and Python. Fortunately there is an optional gcc4.4 "preview" package and we've installed Python 2.7 from source on the development machines. To make use of them by default, do the following:

No Format
mkdir -p ~/bin
cd ~/bin
ln -s /usr/local/bin/python27 python
ln -s /usr/bin/gcc44 gcc
ln -s /usr/bin/gcc44 cc
ln -s /usr/bin/g++44 g++
ln -s /usr/bin/g++44 c++

Your default .profile will automatically suck ~/bin into your path if it exists, thus overriding the old versions of gcc and python using the above symlinks. Now you should be able to compile ramcloud without any special parameters.

Next, update Update your LD_LIBRARY_PATH to include /usr/local/lib. If you do not do so, you'll get cryptic errors claiming libramcloud.so cannot be found. It can, but some of its dependencies in /usr/local/lib cannot. Do the following:

...