Thrift安装
thrift安装包结构
thrift框架用c++代码写成,主要的文件包为 compiler和lib compiler结构:|-- cpp | `-- src | `-- generate | -- parse | main.cc
// Generate it! generate(program, generator_strings);
分析demo.thrift的数据结构和service接口 \|/ 生成模板代码 \|/ 写入 .java文件
安装依赖
Basic requirements
- g++ 3.3.5+
- boost 1.33.1+
Requirements for building from SVN
- GNU build tools: autoconf 2.59+ (2.60+ recommended), automake 1.9+, libtool 1.5.24+
- pkg-config autoconf macros (pkg.m4) (Use MacPorts for Mac OS X)
- lex and yacc (developed primarily with flex and bison)
- libssl-dev
Language requirements
只需选择需要构建给定语言库的语言安装。编译安装Thrift
如果你是从第一次从源代码库(svn)构建,将需要生成configure脚本。 (如果你下载一个tar包,则没有必要)从顶部的目录,./bootstrap.sh
加载安装几个初始化文件configure.ac:50: installing `./config.guess' configure.ac:50: installing `./config.sub' configure.ac:26: installing `./install-sh' configure.ac:26: installing `./missing'
./configure
检测thrift的依赖库是否已安装,请注意Python库会忽略的 --prefix选项,只需安装Python的distutils来放至它的位置(通常是沿行的/ usr/ lib/ pythonX.Y/site - packages/)。如果你需要安装Python模块控制,设置PY_PREFIX变量。 (DESTDIR是尊重Python和C++。)make && make install
这个命令将把thrift编译工具安装到本地linux环境中/usr/local/lib/ thrift的动态链接库都会在这里 /usr/local/include 则是thrift库相关的头文件
生成代码
thrift -r 命令则会copy lib里对应语言的api包到生成的gen-java gen-py gen-php等目录中,当这些语言作为服务器或者客户端应用时,依赖thrift api包进行socket通信 thrift --gen 则生成指定代码种类的数据结构文件 完整示例thrift -r --gen demo.thrift
参考资料:http://wiki.apache.org/thrift/ThriftInstallation 下载站:http://archive.apache.org/dist/incubator/thrift/ 下载站:http://apache.etoak.com//incubator/thrift/