Date: Thu, 28 Mar 2024 18:47:45 +0000 (UTC) Message-ID: <1275865861.47.1711651665711@09ada623a130> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_46_710944422.1711651665711" ------=_Part_46_710944422.1711651665711 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
These instructions are only known to work on 64-bit systems.
sudo apt-get install cmake g++ libboost-dev flex bison re2c libmysqlcl= ient-dev libxml2-dev \ libmcrypt-dev libicu-dev openssl binutils-dev libcap-dev libgd2-xpm-dev zli= b1g-dev libtbb-dev \ libonig-dev libpcre3-dev distcc git-core dpkg-dev debhelper autotools-dev a= utoconf libtool \ libcurl4-openssl-dev libboost-program-options-dev libboost-filesystem-dev l= ibboost-system-dev
Create a working directory:
mkdir hiphop cd hiphop export HIPHOP=3D`pwd`
Get the source:
git clone git://github.com/facebook/hiphop-php cd hiphop-php git submodule init git submodule update cd ..
Get and build the patched libevent
:
wget http://www.monkey.org/~provos/libevent-1.4.13-stable.tar.gz tar xzf libevent-*-stable.tar.gz cd libevent-1.4.13-stable cp ../hiphop-php/src/third_party/libevent.fb-changes.diff . patch < libevent.fb-changes.diff ./configure make make install prefix=3D$HIPHOP cd ..
Get and build libicu
4.2:
wget http://download.icu-project.org/files/icu4c/4.2.1/icu4c-4_2_1-src= .tgz tar xzf icu4c-*-src.tgz cd icu/source ./configure make make install prefix=3D$HIPHOP cd ../../
Get and build the patched curl
:
wget http://curl.haxx.se/download/curl-7.20.0.tar.gz tar xzf curl-*.tar.gz cd curl-7.20.0 cp ../hiphop-php/src/third_party/libcurl.fb-changes.diff . patch -p1 < libcurl.fb-changes.diff ./configure make make install prefix=3D$HIPHOP cd ..
Build HipHop:
cd hiphop-php export CMAKE_PREFIX_PATH=3D$HIPHOP export HPHP_HOME=3D`pwd` export HPHP_LIB=3D`pwd`/lib
cmake . make
* If cmake
fails, run the following to empty the cache befo=
re trying again:
rm CMakeCache.txt
From the shell:
cd .. echo "Hello, world." > test.php hiphop-php/src/hphp/hphp test.php --keep-tempdir=3D1 --log=3D3 --output-dir= =3D$HIPHOP/test-build test-build/program -m server -p 8080
http://localh=
ost:8080/test.php
Ctrl-C
.These directions are a work in progress.
Install Bazaar:
sudo apt-get install bzr
Go into the HipHop directory:
cd $HIPHOP mkdir pressflow-build
Check out Pressflow from the = Hip Hop compatibility branch and make it the working directory:
bzr checkout lp:pressflow/6.x-hiphop cd 6.x-hiphop
Generate includes:
find . -name "*.php" > ../pressflow-build/files.list find . -name "*.inc" | grep -v "\.pgsql\.inc" | grep -v "\.mysql\.inc" >= > ../pressflow-build/files.list find . -name "*.module" >> ../pressflow-build/files.list find . -name "*.install" >> ../pressflow-build/files.list find . -name "*.profile" >> ../pressflow-build/files.list
Build the system:
$HIPHOP/hiphop-php/src/hphp/hphp --input-list=3D$HIPHOP/pressflow-buil= d/files.list --keep-tempdir=3D1 \ --log=3D3 --include-path=3D"." --force=3D1 -v "AllDynamic=3Dtrue" --output-= dir=3D$HIPHOP/pressflow-build
Launch the server:
../pressflow-build/program -m server -p 8080 -v "Server.SourceRoot=3D`= pwd`" -v "Server.DefaultDocument=3Dindex.php" -c $HIPHOP/hiphop-php/bin/mim= e.hdf
The basis for dependencies and the build above is the "Building and installing" page posted to the= GitHub wiki for Hip Hop PHP.