一、安装thrift (macOS / Linux)

  1. 下载thrift0.10.0源码

  https://github.com/apache/thrift/releases/tag/0.10.0

  2. configure

  2.1 生成configure

  $ ./bootstrap.sh

  2.2 配置

  这里只留下了java和python语言的支持,更多语言可以自己移除对应的配置。

  如果执行过程中有异常(对mac兼容不是很好)可以根据行数查看是否为其他语言包导致的,直接编辑configure文件,注释掉即可。

  $ ./configure --with-qt4=no \

  --with-qt5=no \

  --with-c_glib=no \

  --with-csharp=no \

  --with-erlang=no \

  --with-nodejs=no \

  --with-lua=no \

  --with-perl=no \

  --with-php=no \

  --with-php_extension=no \

  --with-dart=no \

  --with-ruby=no \

  --with-haskell=no \

  --with-go=no \

  --with-haxe=no \

  --with-d=no

  3. 编译

  $ make make install

  4. 验证安装是否成功

  $ thrift -version

  二、安装thrift(windows)

  1. 下载

  地址:http://archive.apache.org/dist/thrift/0.10.0/

  这里下载的是 thrift-0.10.0.exe

  2. 安装

  创建thrift home 目录 (如:D:\thrift)

  将下载的thrift-0.10.0.exe 重命名为thrift.exe

  将thrift.exe 放在thrift home目录下

  在环境变量path中添加(如:D:\thrift)

  3. 测试

  C:\Users\Administratorthrift -version

  Thrift version 0.10.0

  C:\Users\Administrator

  三、常见问题:

  1. 在IDE中提示找不到thrift相关的模块

  问题定位:

  python的thrift环境问题

  解决方法:

  在thrift安装完成后需要手动把build目录的thrift模块(macos为例:./lib/py/build/lib.macosx-10.10-x86_64-2.7/thrift)copy到python对应的site-package目录

  2. 代码编译不过

  问题定位:

  一般是thrift的版本问题,通过thrift -version检查是否为0.10.0

  解决方法:

  重新安装0.10.0版本的thrift

thrift安装及常见问题的更多相关文章

  1. thrift安装及python和c++版本调试

    一.安装过程 1.安装依赖库 ]# yum install boost-devel-static libboost-dev libboost-test-dev libboost-program-opt ...

  2. Mac上brew&thrift安装 以及在thrift架构下,自己新作了maven的小例 Demo

    1.缘由 前几天偶尔在网上看到thrift的信息,其内容和作用极大的引起了我的兴趣,因为我也是做iOS开发的,通过在网上的查询发现信息虽然很多实用的很少,容易误导他人,经过自己的成功实践,做了笔录,为 ...

  3. mysql-5.6.17编译安装和常见问题

    mysql-5.6.17编译安装和常见问题 以前用的是MySQL的5.1版本,且使用的是免编译的包,安装简单.最近换了5.6版本的MySQL,安装过程出现了不少问题. 1. 卸载原来版本的MySQL ...

  4. 【Thrift一】Thrift安装部署

    Thrift安装部署 Thrift安装部署 下载源码包 安装g++ 解压Thrift安装包 安装boost开发工具 测试(python版) 下载源码包 wget http://apache.fayea ...

  5. Thrift安装介绍

    一.简介 1.语言库要求 因为thrift支持多语言.所以编译thrift源代码的过程中,会用到该语言的一些类库.如c++的boost.java的jdk等. 那么,在安装thrift过程中,须要对各种 ...

  6. 【转】hive简介安装 配置常见问题和例子

    原文来自:  http://blog.csdn.net/zhumin726/article/details/8027802 1 HIVE概述 Hive是基于Hadoop的一个数据仓库工具,可以将结构化 ...

  7. 【转】 hive简介,安装 配置常见问题和例子

    原文来自:  http://blog.csdn.net/zhumin726/article/details/8027802 1 HIVE概述 Hive是基于Hadoop的一个数据仓库工具,可以将结构化 ...

  8. Python概述_软件安装_常见问题

    1.  Python安装 目前python有2个大版本,2和3,由于2和3语法有差别,现有的许多库都是基于python2开发,本系列文章以python2为主. 1.1  重要概念 1. 动态语言 运行 ...

  9. thrift 安装介绍

    一.About  thrift            thrift是一种可伸缩的跨语言服务的发展软件框架.它结合了功能强大的软件堆栈的代码生成引擎,以建设服务,工作效率和无缝地与C + +,C#,Ja ...

随机推荐

  1. sql---如何把sql查询出来的结果当做另一个sql的条件查询,1、语句2、with as

    '; -- table2 的 name 作为 table1的条件 select * from table1 where name in (select name from table2) --如果有多 ...

  2. 巨蟒python全栈开发数据库前端6:事件onclick的两种绑定方式&&onblur和onfocus事件&&window.onload解释&&小米商城讲解

    1.回顾上节内容(JavaScript) 一.JavaScript概述 1.ECMAScript和JavaScript的关系 2.ECMAScript的历史 3.JavaScript是一门前后端都可以 ...

  3. Commit message 的写法规范。本文介绍Angular 规范(

    Commit message 的写法规范.本文介绍Angular 规范( http://www.ruanyifeng.com/blog/2016/01/commit_message_change_lo ...

  4. 搜索过滤grep(win下为findstr)

    搜索过滤grep(win下为findstr) 1.主要参数 [options]主要参数: -c:只输出匹配行的计数. -i:不区分大小写 -h:查询多文件时不显示文件名. -l:查询多文件时只输出包含 ...

  5. 【我的Android进阶之旅】 Android Studio插件之Jenkins插件介绍

    一Jenkins插件功能介绍 1Jenkins任务列表 2切换Jenkins分组 3构建Jenkins任务 4进入构建Jenkins任务的页面 5进入最后一次构建Jenkins任务的页面 6增加Jen ...

  6. 我的Android进阶之旅------>android中一些特殊字符(如:←↑→↓等箭头符号)的Unicode码值

    在项目中,有时候在一些控件(如Button.TextView)中要添加一些符号,如下图所示:                         这个时候可以使用图片的方式来显示,不过这些可以直接使用Un ...

  7. centos7 重启网卡失败

    今天在centOS 7 network服务重启不了 现把各种解决方法归纳整理,希望能让后面的同学少走点歪路... 首先看问题:执行service network restart命令后出现下面的错误: ...

  8. PyNest——part 3: connecting networks with synapses

    part 3: connecting networks with synapses parameterising synapse models NEST提供了各种不同的突触模型. 您可以使用命令nes ...

  9. JetBrains ReSharper 8.2 Build 8.2.0.2160 && StyleCop

    先安装 StyleCop 再安装 JetBrains ReSharper 8.2 Build 8.2.0.2160

  10. Oracle SQL 外键测试

    测试SQL 创建SQL     t1为主表      t2为子表 create table t1(insert_date number,id int) create table t2(insert_d ...