Building and Installing on Ubuntu 9.10

steelbrain edited this page Oct 3, 2014 · 36 revisions

At the moment, HipHop can only run on 64 bits systems.

Packages installation

Using sudo or as root user:

sudo apt-get install git-core cmake g++ libboost-dev libmysqlclient-dev libxml2-dev libmcrypt-dev libicu-dev openssl binutils-dev libcap-dev libgd2-xpm-dev zlib1g-dev libtbb-dev libonig-dev libpcre3-dev autoconf libtool libcurl4-openssl-dev libboost-system-dev libboost-thread-dev libboost-program-options-dev libboost-filesystem-dev wget memcached libreadline-dev libncurses-dev libbz2-dev libc-client2007b-dev libevent-dev

Note: libmemcached in the apt repository for Ubuntu 9.10 is out of date (0.31 and 0.39 is required), therefore you need to build it separately.

Getting HipHop source-code

mkdir hiphop
cd hiphop
git clone git://github.com/facebook/hhvm.git --depth=1
cd hhvm
export CMAKE_PREFIX_PATH=`pwd`/../
git submodule update --init --recursive
cd ..

Building third-party libraries

ICU4

wget http://download.icu-project.org/files/icu4c/4.2.1/icu4c-4_2_1-src.tgz
tar -xvzf icu4c-4_2_1-src.tgz
cd icu/source
./configure --prefix=$CMAKE_PREFIX_PATH
make
make install
cd ../../

libCurl

Make sure that your system time is correct, otherwise ./configure will fail.

wget http://curl.haxx.se/download/curl-7.20.0.tar.gz
tar -xvzf curl-7.20.0.tar.gz
cd curl-7.20.0
cp ../hhvm/third-party/libcurl.fb-changes.diff .
patch -p1 < libcurl.fb-changes.diff
./configure --prefix=$CMAKE_PREFIX_PATH
make
make install
cd ..

libmemcached

wget http://launchpad.net/libmemcached/1.0/0.43/+download/libmemcached-0.43.tar.gz
tar -zxvf libmemcached-0.43.tar.gz
cd libmemcached-0.43
./configure --prefix=$CMAKE_PREFIX_PATH
make
make install
cd ..

Building HipHop

cd hhvm
cmake .
make

hphp binary can be found in `hphp/hhvm/hhvm`.

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.