Facebook’s HipHop on Debian

Setting up hiphop-php on Debian is not that easy because it uses patched versions of several libraries.

As a normal user run the following commands:

Dependencies

    apt-get install cmake openssl \
    g++ libmcrypt-dev  libicu-dev \
    libboost-dev binutils-dev libcap-dev \
    flex bison libgd2-xpm-dev zlib1g-dev \
    re2c libtbb-dev libonig-dev \
    libmysqlclient-dev \
    libxml2-dev libpcre3-dev git-core \
     autoconf libtool libcurl4-openssl-dev \
    libboost-system-dev libboost-program-options-dev \
    libboost-filesystem-dev

HipHop

    mkdir hiphop
    cd hiphop
    git clone https://github.com/facebook/hiphop-php
    cd hiphop-php
    export CMAKE_PREFIX_PATH=`/bin/pwd`/../
    export HPHP_HOME=`/bin/pwd`
    export HPHP_LIB=`/bin/pwd`/bin
    git submodule init
    git submodule update
    cd ..

libevent

    wget http://www.monkey.org/~provos/libevent-1.4.14-stable.tar.gz
    tar -xzvf libevent-1.4.14-stable.tar.gz
    cd libevent-1.4.14-stable
    cp ../hiphop-php/src/third_party/libevent-1.4.14.fb-changes.diff .
    patch 

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

    wget http://curl.haxx.se/download/curl-7.22.0.tar.gz
    tar -xvzf curl-7.22.0.tar.gz
    cd curl-7.22.0
    cp ../hiphop-php/src/third_party/libcurl.fb-changes.diff .
    patch -p1 

HipHop

    cd hiphop-php
    cmake .
    make
    # Segmentation fault:

Segfault