- Notifications
You must be signed in to change notification settings - Fork3.1k
Building and installing HHVM on CentOS 6.4
Shahyar G edited this pageMar 12, 2015 ·26 revisions
sudo yum install git svn cpp make autoconf automake libtool patch memcached gcc-c++ cmake wget boost-devel mysql-devel pcre-devel gd-devel libxml2-devel expat-devel libicu-devel bzip2-devel oniguruma-devel openldap-devel readline-devel libc-client-devel libcap-devel binutils-devel pam-devel elfutils-libelf-devel ImageMagick-devel libxslt-devel libevent-devel libcurl-devel libmcrypt-devel tbb-devel libdwarf-devel ncurses-devel python-devel
mkdir devcd devgit clone git://github.com/facebook/hhvm.git --depth=1cd hhvmexport CMAKE_PREFIX_PATH=`pwd`/..cd ..
wget http://www.cmake.org/files/v3.0/cmake-3.0.2.tar.gztar xzvf cmake-3.0.2.tar.gzcd cmake-3.0.2./configurenano Source/CMakeFiles/cmake.dir/link.txt# add "-ltinfo" to the end of the only linemakesudo make installPATH=/usr/local/cmake/bin:$PATHcd ..
wget http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.gz/download -O boost_1_55_0.tar.gztar xzvf boost_1_55_0.tar.gzcd boost_1_55_0./bootstrap.sh --prefix=$CMAKE_PREFIX_PATH --libdir=$CMAKE_PREFIX_PATH/lib./b2 --layout=system installexport Boost_LIBRARYDIR=$CMAKE_PREFIX_PATH/include/boost/cd ..
wget https://google-glog.googlecode.com/files/glog-0.3.3.tar.gztar xzvf glog-0.3.3.tar.gzsvn checkout http://google-glog.googlecode.com/svn/trunk/ google-glogcd google-glog./configure --prefix=$CMAKE_PREFIX_PATHmakemake installcd ..
wget http://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gztar xzvf libmemcached-1.0.18.tar.gzcd libmemcached-1.0.18./configure --prefix=$CMAKE_PREFIX_PATHmakemake installcd ..
wget http://www.canonware.com/download/jemalloc/jemalloc-3.5.1.tar.bz2tar xjvf jemalloc-3.5.1.tar.bz2cd jemalloc-3.5.1./configure --prefix=$CMAKE_PREFIX_PATHmakemake installcd ..
wget http://ftp.osuosl.org/pub/blfs/conglomeration/sqlite/sqlite-autoconf-3071502.tar.gztar xzvf sqlite-autoconf-3071502.tar.gzcd sqlite-autoconf-3071502./configure --prefix=$CMAKE_PREFIX_PATHmakemake installcd ..
cd hhvmgit submodule update --init --recursivecmake.sed -i -e's/$/..\/..\/..\/lib\/libmemcached.so/g' hphp/hhvm/CMakeFiles/hhvm.dir/link.txtmake
--
gcc vps uses excessive amounts of memory when building hhvm,llvm can significantly speed up the Assembly and to eliminate the overhead of memory
# yum install llvm clang# clang --versionclang version 3.4 (tags/RELEASE_34/final)Target: x86_64-redhat-linux-gnuThread model: posix# cmake \ -DCMAKE_CXX_COMPILER=/usr/bin/clang++ \ -DCMAKE_C_COMPILER=/usr/bin/clang \ -DCMAKE_ASM_COMPILER=/usr/bin/clang.