thrift 服务端linux C ++ 与客户端 windows python 环境配置(thrift 自带tutorial为例)
关于Thrift文档化的确是做的不好。摸索了很久才终于把跨linux与windows跨C++与python语言的配置成功完成。以下是步骤:
1) Linux下环境配置
l 完成thrift所依赖的其他软件包的安装:Boost、libtool、libevent、bison、flex
- 解压boost_1_55_0,进入boost_1_55_0目录下
- chmod 777 bootstrap.sh
- chmod 777 ./tools/build/v2/engine/build.sh
- ./bootstrap.sh
- 进入到libtool-1.3.5目录
- Make
- 进入到libevent-2.0.21-stable目录
- Make
- 进入到bison-3.0目录
- make
(不安装这些所依赖的软件包就会一直提示失败,也是醉了,我也不能排除哪些是必要的,因此都写上了)
l thrift安装
- 解压thrift压缩文件:tar zxvf thrift-0.9.1.tar.gz
- 进入到thrift-0.9.1目录
- ./configure
- Make
- sudo make install
- thrift –version
- 成功显示thrift 版本安装成功
(一定要显示thrift版本才算成功装好,如果没有说前面的安装出现了问题哦)
l 编写.thrift文件并生成中间文件
l 编译
- Thrift –r –gen cpp tutorial.thritft
- make 编译生成TutorialServer,TutorialClient两个可执行文件(我们只使用服务端)
2) window下环境配置
l 解压thrift-0.9.1.tar.gz
- 安装thrift库
python setup.py install
- Thrift生成代码
使用下载的好的thrift-0.9.1.exe在thrift-0.9.1\tutorial目录下执行命令
thrift-0.9.1.exe –r –gen py tutorial.thrift
在当前文件夹产生gen-py文件夹
3) 运行
Linux服务端:
Windows客户端:
最终linux服务端如下所示
成功哒啦,
thrift 服务端linux C ++ 与客户端 windows python 环境配置(thrift 自带tutorial为例)的更多相关文章
- 【泡咖啡1】linux下caffe编译以及python环境配置手记
caffe是一个深度学习的库,相信搞深度学习的话,不是用这个库就是用theano吧.要想使用caffe首先第一步就是要配置好caffe的环境.在这里,我主要说的是在debian的linux环境下如何配 ...
- linux下svn客户端安装及环境配置(转)
一. 源文件编译安装.源文件共两个,为: 1. 下载subversion源文件 subversion-1.6.1.tar.gz http://d136.d.iask.com/fs/800/1 ...
- python thrift 服务端与客户端使用
一.简介 thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发.它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, ...
- C++ Thrift服务端记录调用者IP和被调接口方法
Apache开源的Thrift(http://thrift.apache.org)有着广泛的使用,有时候需要知道谁调用了指定的函数,比如在下线一起老的接口之前,需要确保对这些老接口的访问已全部迁移到新 ...
- 用http请求thrift服务端出现了内存溢出的情况
记一次内存溢出的分析经历 - Janti - 博客园 https://www.cnblogs.com/superfj/p/8474288.html 说在前面的话 朋友,你经历过部署好的服务突然内存溢出 ...
- windows10 64位 安装mysql服务端 并使用navicat客户端链接 掉的一堆坑
1.目的 安装mysql服务端 并使用navicat客户端链接 2.过程 1)下载mysql服务端 下载过程(参考https://blog.csdn.net/youxianzide/article/d ...
- Identity4实现服务端+api资源控制+客户端请求
准备写一些关于Identity4相关的东西,最近也比较对这方面感兴趣.所有做个开篇笔记记录一下,以便督促自己下一个技术方案方向 已经写好的入门级别Identity4的服务+api资源访问控制和简单的客 ...
- SuperWebSocket实现服务端和WebSocket4Net实现客户端
SuperWebSocket实现服务端和WebSocket4Net实现客户端具体实现如下: SuperWebSocket实现服务端 注:本作者是基于vs2019 enterprise版本,所有项目均为 ...
- Linux系统下安装jdk及环境配置(两种方法)
https://blog.csdn.net/qq_42815754/article/details/82968464 这里介绍两种linux环境下jdk的安装以及环境配置方法在windows系统安装j ...
随机推荐
- HttpClient (POST GET PUT)请求
HttpClient (POST GET PUT)请求 package com.curender.web.server.http; import java.io.IOException; import ...
- The note of Vue.js
In computed field, increment operator is not supported.
- 编译osgEarth2.8+VS2013+CMake3.4.0在Release版本的问题
1>LINK : fatal error LNK1181: 无法打开输入文件"optimized.lib" 可以到http://forum.osgearth.org搜索相关帖 ...
- Photoshop 裁剪图片
如图1选择裁剪工具,然后如图2点一下clear,就可以根据鼠标裁剪任意大小的图片
- SimpleXML操控XML
复杂字符串如下: $_xml=<<<_xml <?xml version="1.0" encoding="utf-8"?> < ...
- hdu 1241 Oil Deposits
#include<cstdio> #include<iostream> #include<algorithm> #include<math.h> #in ...
- elasticsearch5.0.0 安装插件及配置过程
elasticsearch5.0.0 安装插件及配置过程 由于es5.0是里程碑式的更新,所以很多变化的地方,暂时我就插件安装遇到的问题记录一下. 插件安装命令 2.3版本的安装命令 安装Marvel ...
- JS string 截取
subStubstring(a,b); a:开始索引 b:结束索引 subStr(c,d) c:开始索引 d:截取数量.
- 让Git忽略所有obj和bin目录的同步
DotNet的项目里,编译出来的二进制文件默认都是放在每个项目对应的bin和obj目录下,有时候开发人员会不小心把这些目录的文件错误的提交到Git服务器.Git里的忽略文件功能可以通过一个.gitig ...
- DBNEWNAME工具介绍
下面修改数据库的SID和db_name [root@oracle ~]# su - ora11g db11@oracle /home/ora11g$ db11@oracle /home/ora11g ...