thrift安装手册

  thrift安装手册 

1 简介...3

2 准备工作...3

2.1 基本要求...3

2.2 源代码编译要求...3

2.3 编译语言要求...4

2.4 不同操作系统的要求...4

2.4.1 CentOS.4

2.4.2 OS X..5

Boost 安装...5

libevent 安装...5

2.4.3 Debian 或者 Ubuntu.5

2.4.3 Windows.5

3 thrift 编译安装...5

3.1 必备工具安装...5

3.2 thrift源码准备...6

3.3 配置thrift6

3.4 编译安装...7

4 参考资料...8

http://thrift.apache.org/docs/8

http://my.oschina.net/lxrm/blog/161344.8

http://chinahadoop.net/thread-5702-1-1.html8

 

 

1简介

   thrift是一种可伸缩的跨语言服务的发展软件框架。它结合了功能强大的软件堆栈的代码生成引擎,以建设服务,工作效率和无缝地与C + +,C#,Java,Python和PHP和Ruby结合。thrift是facebook开发的,我们现在把它作为开源软件使用。thrift允许你定义一个简单的定义文件中的数据类型和服务接口。以作为输入文件,编译器生成代码用来方便地生成RPC客户端和服务器通信的无缝跨编程语言。    
  >>>最初由facebook开发用做系统内个语言之间的RPC通信 。 
  >>>2007年由facebook贡献到apache基金会,成为apache项目孵化器中的一员 。 
  >>>支持多种语言之间的RPC方式的通信:php语言client可以构造一个对象,调用相应的服务方法来调用java语言的服务 ,跨越语言的C/S   rpc  调用 。

 

2准备工作

以下内容均翻译自 thrift官方文档,要求中有些工具可能已经有最新版本,安装最新版本即可:

参考地址:http://thrift.apache.org/docs/install/

2.1基本要求

·                    兼容POSIX的类UNIX操作系统

·                               Windows系统中请使用Cygwin或者 MinGW模拟unix环境

·                    g++ 4.2

·                    boost 1.40.0

·                    lexyacc工具.

 

2.2源代码编译要求

·                    GNU编译tools:

·                               autoconf 2.65

·                               automake 1.9

·                               libtool 1.5.24

·                    pkg-config autoconf macros (pkg.m4)

·                    lexyacc

·                    libssl-dev

   

2.3编译语言要求

以下列举了编译为不同语言对应库时的系统要求。

·                    C++

·                               Boost 1.40.0

·                               libevent (可选)

·                               zlib (可选)

·                    Java

·                               Java 1.5

·                               Apache Ant

·                    C#: Mono 1.2.4 或者 Visual Studio 2005+

·                    Python 2.6 (包括扩展模块的头文件)

·                    PHP 5.0 (可选:包括扩展模块的头文件)

·                    Ruby 1.8

·                               bundler gem

·                    Erlang R12 (不推荐使用R11  )

·                    Perl 5

·                               Bit::Vector

·                               Class::Accessor

2.4不同操作系统的要求

主要列举主流系统 的 要求

 2.4.1 CentOS

                   参考自 官方文档:http://thrift.apache.org/docs/install/centos/

                   切换到 root用户,执行如下命令 安装 thrift编译安装 必备工具

yum install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel zlib-devel python-devel ruby-devel

 

 

2.4.2 OS X

                   参考自官方文档:http://thrift.apache.org/docs/install/os_x/

Boost安装

 boost.org 下载 boost, 解压,执行如下命令即可编译安装

./bootstrap.sh
sudo ./b2 threading=multi address-model=64 variant=release stage install

libevent安装

 libevent,下载libevent,解压执行如下命令编译并安装

./configure --prefix=/usr/local 
make
sudo make install

 

2.4.3Debian 或者 Ubuntu

                   参考自 官方文档:http://thrift.apache.org/docs/install/ubuntu/

         执行如下命令, 安装 thrift 编译安装 必备工具:

sudo apt-get install libboost-dev libboost-test-dev libboost-program-options-dev libevent-dev automake libtool flex bison pkg-config g++ libssl-dev

 

2.4.3Windows

                   基于Windows 系统的 编译安装有些复杂,在此不做介绍

         具体安装步骤参考官方文档:

         http://thrift.apache.org/docs/install/windows/

3thrift 编译安装

本手册中选择的 操作系统 为 centsos .6.3

3.1必备工具安装

参考 2.4.1中centos 必备安装:如下



3.2thrift源码准备

下载 thrift ,编写本手册时 最新版本为 0.9.1


3.3配置thrift

执行如下命令

./configure

出现如下错误

 

解决办法

安装 openssl openssl-devel (centOS)

#yum -y install openssl openssl-devel

安装完成再次./configure

配置成功

3.4编译安装

执行 make 命令 安装,出现如下错误

/bin/bash ../../libtool --tag=CXX   --mode=link g++-Wall -g -O2 -L/usr/lib   -olibtestgencpp.la  ThriftTest_constants.lo ThriftTest_types.lo../../lib/cpp/libthrift.la -lssl -lcrypto -lrt -lpthread 
libtool: link: ar cru .libs/libtestgencpp.a.libs/ThriftTest_constants.o .libs/ThriftTest_types.o 

ar: .libs/ThriftTest_constants.o: No such fileor directory

 

解决办法:

c++选项关闭,具体原因尚不清楚

执行如下命令:

./configure –with-cpp=no


make

即可编译完成

然后执行

make install 安装即可

查看 安装的thrift 版本及帮助

 

4 参考资料

http://thrift.apache.org/docs/

http://my.oschina.net/lxrm/blog/161344

http://chinahadoop.net/thread-5702-1-1.html

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值