thrift允許你定義一個簡單的定義文件中的數據類型和服務接口。以作爲輸入文件,編譯器生成代碼用來方便地生成RPC客戶端和服務器通信的無縫跨編程語言
//系統自帶的php是5.1的,thrift要求php版本爲5.2以上 update php5.1 to php5.2
rpm -qa |grep php
vi /etc/yum.repos.d/zongguofengcn.repo
[utterramblings]
name=Jason's Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
//添加以上內容,保存這個文件
yum -y update php
//check php version
rpm -qa |grep php
//下載針對自己系統版本的jdk 這裏我download的是jdk-6u27-ea-linux-amd64.rpm
mkdir /usr/java/
chmod 777 jdk-6u27-ea-linux-amd64.rpm
rpm -ivh jdk-1_6_0_14-linux-i586.rpm
//打開 /etc/profile 文件 在文件最後加入
vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.6.0_27
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
//使配置生效
source /etc/profile
//下載java依賴庫 apache-ant-1.8.2.tar.gz apache-ivy-2.2.0.tar.gz
tar -xvf apache-ant-1.8.2.tar.gz
tar -xvf apache-ivy-2.2.0.tar.gz
mv apache-ant-1.8.2 /usr/java/
cp apache-ivy-2.2.0/lib/ivy-2.2.0.jar /usr/java/apache-ant-1.8.2/lib/
添加ant至環境變量
export JAVA_HOME=/usr/java/jdk1.6.0_27
export ANT_HOME=/usr/java/apache-ant-1.8.2
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ANT_HOME/bin:$PATH
//下載thrift依賴庫
wget http://www.monkey.org/~provos/libevent-2.0.10-stable.tar.gz
tar –xvf libevent-2.0.10-statble.tar.gz
./configure
make
make install
注:!!!!如果make error 可選擇用 yum install libevent libevent-devel -y來進行安裝
//下載thrift
wget http://apache.etoak.com//thrift/0.7.0/thrift-0.7.0.tar.gz
tar -xvf thrift-0.7.0.tar.gz
//執行配置文件 查看編程語言依賴是否成功
./configure --prefix=/usr/local/thrift
make
make install
//如缺少依賴的庫文件,可執行以下命令
yum install libghc6-http-dev libghc6-binary-dev libboost-iostreams-dev libboost-filesystem-dev libboost-dev automake libtool flex bison pkg-config g++ ivy libslf4j-java libcommons-lang-java liblog4j1.2-java automake1.10
yum install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel zlib-devel python-devel glibc-devel glibc glib2 glib2-devel