安装运行Apache Thrift
在linux中安装Thrift
安装需求
以下列举了以下依赖工具(这里是用于安装版本0.9.2)
- g++ 4.2
- boost 1.53.0
- autoconf 2.65
- automake 1.13
- libtool 1.5.24
- pkg-configautoconf macros (pkg.4)
- lex and yacc runtime libraries
- libssl-dev
在centos 中安装
1.更新软件版本
$ sudo yum -y update
- 安装开发工具
$ sudo yum -y groupinstall "Development Tools"
- 如果你没有安装过wget,则安装wget
$ sudo yum -y install wget
- 安装C++依赖包:
$ sudo yum -y install libevent-devel zlib-devel openssl-devel boost-devel bzip2-devel
- 升级boost版本,这个boost版本需要比yum源安装的版本高:
$ wget http://sourceforge.net/projects/boost/files/boost/1.58.0/boost_1_58_0.tar.gz
$ tar -xvzf boost_1_58_0.tar.gz
$ cd boost_1_58_0
$ sudo ./bootstrap.sh
$ sudo ./b2 install
- 根据需要安装对应的开发语言
在ubuntu中安装
- 更新软件包
$ sudo apt-get update
$ sudo apt-get upgrade
- 安装和升级必要的依赖包
$ sudo apt-get install libboost1.54-all-dev libevent-dev g++ bison libssl-dev
- 如果没有wget,则安装wget
$ sudo apt-get install wget
- 根据需要安装对应的开发语言
安装Apache Thrift
安装流程:
$ wget http://www.eu.apache.org/dist/thrift/0.9.2/thrift-0.9.2.tar.gz
$ tar -xvzf thrift-0.9.2.tar.gz
$ cd thrift-0.9.2
$ ./configure
如果你不想编译某些语言。可以采用以下方式:
$ ./configure --without-php
如果出现lua版本错误的话,可以采用解决问题:
$ ./configure --without-lua
需要需要编译lua的话,需要升级lua语言到5.2版本,同时使用以下命令:
$ whereis boost boost: /usr/include/boost
之后在配置中指定boost地址:
$ ./configure -with-boost=/usr/include/boost
之后执行:
make
最后执行:
sudo make install
验证Thrift是否安装成功:
[root@Lserv-114 ~]# thrift
Usage: thrift [options] file
Use thrift -help for a list of options
则说明成功。
测试Thrift
创建一个文件test.thrift:
1 namespace php mytest
2 # this is just a Test service, which contains two methods
3 service Test {
4 # this method probably does nothing
5 void donothing(),
6 # this method probably multiplies two numbers
7 i32 multiply(1:i32 number1, 2:i32 number2),
8 }
运行指令:
thrift -r --gen php test.thrift
如果在当前文件夹下存在gen-php
文件夹,则说明成功。
网友评论