HIPHOP 安装过程
官方安装
https://github.com/facebook/hiphop-php/wiki/Building-and-installing
?
?主要参考安装过程
http://php.webtutor.pl/en/2011/04/22/howto-install-hiphop-for-php-on-centos-5-x/
?
当前安装环境
[root@vm11 ~]# lsb_release -a
LSB Version: ? ?:core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? :graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:prin ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ting-4.0-noarch
Distributor ID: CentOS
Description: ? ?CentOS release 5.6 (Final)
Release: ? ? ? ?5.6
Codename: ? ? ? Final
[root@vm11 ~]#
?
安装之前先把gcc 版本升级
可以参照?http://maikkk.iteye.com/admin/blogs/1112216
?
开始安装需要的软件
rpm -ivh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm?yum -y install git cmake pcre-devel libmcrypt-devel mysql-devel gd-devel libxml2-devel libcap-devel binutils-devel flex bison expat-devel patch gcc44 gcc44-c++ gcc gcc-c++ bzip2 bzip2-devel memcached openldap openldap-devel readline-devel libc-client-devel pam-devel wget ncurses-devel
上面软件是安装过程中需要的,或许你机器已经安装过,假如后面编译时候遇到缺少其他库可以在上面查找
安装以下命令下载必要的软件安装
mkdir hiphopcd hiphopgit clone git://github.com/facebook/hiphop-php.git使用git 下载hiphop源代码继续下载其他依赖的库
wget "http://downloads.sourceforge.net/project/re2c/re2c/0.13.5/re2c-0.13.5.tar.gz?use_mirror=cdnetworks-us-2"wget "http://www.threadingbuildingblocks.org/uploads/77/142/2.2/tbb22_20090809oss_src.tgz"wget http://curl.haxx.se/download/curl-7.20.0.tar.bz2wget http://www.monkey.org/~provos/libevent-1.4.14-stable.tar.gzwget http://launchpad.net/libmemcached/1.0/0.48/+download/libmemcached-0.48.tar.gzwget http://download.icu-project.org/files/icu4c/4.6.1/icu4c-4_6_1-src.tgzwget http://www.geocities.jp/kosako3/oniguruma/archive/onig-5.9.2.tar.gzwget "http://downloads.sourceforge.net/project/boost/boost/1.46.1/boost_1_46_1.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fboost%2Ffiles%2Fboost%2F1.46.1%2F&use_mirror=ignum"wget http://php.webtutor.pl/wp-content/uploads/2011/04/libcclient2007-devel.tar.gz?
下面解压文件tar xvjf curl-7.20.0.tar.bz2tar xvzf libevent-1.4.14-stable.tar.gztar xvzf re2c-0.13.5.tar.gztar xvzf tbb22_20090809oss_src.tgztar xvzf libmemcached-0.48.tar.gztar xvzf icu4c-4_6_1-src.tgztar xvzf onig-5.9.2.tar.gztar xvzf boost_1_46_1.tar.gztar xvzf libcclient2007-devel.tar.gz
cd tbb22_20090809ossgmakecp -Rp include/tbb/ /usr/include/cp /build/*_release/*.so /usr/lib/cp /build/*_release/*.so.2 /usr/lib/ldconfigcd ..?cd re2c-0.13.5./configure make installcd ..?cd libevent-1.4.14-stablecp ../hiphop-php/src/third_party/libevent-1.4.14.fb-changes.diff .patch < libevent-1.4.14.fb-changes.diff./configure make installcd ..?cd curl-7.20.0cp ../hiphop-php/src/third_party/libcurl.fb-changes.diff .patch -p0 < libcurl.fb-changes.diff./configure make installcd ..?cd libmemcached-0.48./configure make installcd ..?cd icu/source./configure make installcd ../..?cd onig-5.9.2./configure make installcd ..?cd boost_1_46_1./bootstrap.sh ./bjam --layout=system installcd ..?cp -r imap local/include/cp /usr/lib/libc-client.so.2007 local/lib/libc-client.so
以上安装其他依赖库。默认一般都在/usr/local/lib 或者 /usr/local/lib64
cd hiphop-php?git submodule initgit submodule updateexport HPHP_HOME=`pwd`export HPHP_LIB=`pwd`/bincmake .make经验之谈 如果在cmake.是编译之前的检查依赖库.如果出现一些库或者文件找不到可以用yum 命令在线查找安装或者locate 查找下对应文件是否安装到正确目录下面有时候hiphop会查找到/usr/lib 或者/usr/lib64?但上面一些软件安装在/usr/local/lib 或者/usr/local/lib64这么就需要建立快捷方式或者拷贝对应的库到/usr/lib 或者/usr/lib64 下面(使用cp,ln 指令)在make 过程中某些库的版本不对缺少一些函数,可以用ldd查看下依赖然后找到对应文件拷贝到库目录下还有make 时间比较长,最好能几个cpu一起工作(具体怎么设置要谷歌下)在这个过程中花时间最多就是安装那些依赖库,断断续续花了不少时间,平时真是很少接触o(︶︿︶)o 唉有什么问题可以留言讨论下。睡觉去。。。
?
?
?