[Hadoop] - Protocol Buffer安装
Hadoop从2.x版本开始,底层的RPC远程调用使用ProtocolBuffer格式来传递数据,所以在编译Hadoop的过程中有可能出现提示缺少Protocol服务的异常信息,类似:'protoc --version' did not return a version,具体异常如下:

解决方案即安装对应版本的Protocol Buffer服务
安装步骤如下:
============================================================
一、选择对应版本
ProtocolBuffer官方地址为:https://developers.google.com/protocol-buffers/
Google的所有插件/软件的代码管理全部放到了GitHub上,所以源码相关的下载路径为:https://github.com/google/protobuf
其中Hadoop对ProtoBuf的版本要求一般为[2.5,+), 也就是最少是2.5的版本(hadoop内部使用的是2.5的版本),故这里介绍2.5版本的安装
二、软件下载
方式一:进行源码编译
下载对应版本的源码,可以通过git进行源码的下载,然后进行tag的切换,再进行源码编译,最后进行编译好的文件安装操作;但是这个步骤中在进行源码编译的时候,由于需要从Google的服务器下载一些服务,国内的网络基本上没法下载成功,故该方式建议大家不要使用
方式二:直接下载编译的压缩包进行安装(半编译)
对应版本的介绍地址:https://github.com/google/protobuf/releases/tag/v2.5.0
下载地址:https://github.com/google/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz
下载命令:wget https://github.com/google/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz
三、软件安装(安装用户root)
1. cd /opt/softwares
2. wget https://github.com/google/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz
3. tar -zxvf ./protobuf-2.5.0.tar.gz -C /opt/modules
4. cd /opt/modules/protobuf-2.5.0
5. ./configure
6. make
7. make install
8. protoc --version

四、其他
在安装过程中需要依赖gcc编译环境,所以如果您的环境没有安装过gcc,建议在安装前先安装gcc编译环境
yum install -y autoconf automake libtool curl make g++ unzip
==========================================
备注:
安装环境:
centos 6.5 64位 1核2G
[Hadoop] - Protocol Buffer安装的更多相关文章
- Google Protocol Buffer安装编译及使用
近期玩了玩谷歌的Protocol Buffer.以下就简介下 Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准.眼下已经正在使用的 ...
- Google Protocol Buffer的安装与.proto文件的定义
什么是protocol Buffer呢? Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准. 我理解的就是:它是一种轻便高效的结构 ...
- Hadoop基于Protocol Buffer的RPC实现代码分析-Server端
http://yanbohappy.sinaapp.com/?p=110 最新版本的Hadoop代码中已经默认了Protocol buffer(以下简称PB,http://code.google.co ...
- Google Protocol Buffer的安装与.proto文件的定义(转)
转自(https://www.cnblogs.com/yinheyi/p/6080244.html) 什么是protocol Buffer呢? Google Protocol Buffer( 简称 P ...
- Hadoop基于Protocol Buffer的RPC实现代码分析-Server端--转载
原文地址:http://yanbohappy.sinaapp.com/?p=110 最新版本的Hadoop代码中已经默认了Protocol buffer(以下简称PB,http://code.goog ...
- ubnutu 安装protocol buffer
工作中需要使用protocol buffer,需要编译出protocol buffer的动态链接库,然后在别的makefile中链接它, 我的环境是ubnutu16.04,64bit,使用的proto ...
- [原创翻译]Protocol Buffer Basics: C#
Protocol Buffer 基础知识:c# 原文地址:https://developers.google.com/protocol-buffers/docs/csharptutorial ...
- Google Protocol Buffer 的使用和原理[转]
本文转自: http://www.ibm.com/developerworks/cn/linux/l-cn-gpb/ Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构 ...
- protocol buffer
下载与说明:https://github.com/google/protobuf Google Protocol Buffer 的使用和原理:http://www.ibm.com/developerw ...
随机推荐
- java求两个集合的差集
public static void main(String[] args) {Set set = new HashSet();Set set1 = new HashSet();set.add(&qu ...
- intel Xeon(R) CPU E5-2650 v2 性能测试报告
intel Xeon(R) CPU E5-2650 v2 ...
- 关于java sort的几种实现方式(单纯排序,按照bean的某一个字段,按照bean的多个字段)
最近的开发过程中遇到了,按照bean类中的多个字段进行排序的情况,借此机会把相关的排序做法,简单整理备份一下. 1.list的单纯排序 2.list元素为bean的情况,按照bean的某一个属性进行排 ...
- 关于金额,重量等浮点数的数据库字段设计(用Int,Long代替浮点数计算)
金额.重量.成绩等数据库字段推荐使用int或bigint类型. 通常我们数据库设计中金额,重量等涉及到小数位的字段会用float或decimal,mysql还可以用double,但往往每笔金额的计算我 ...
- PHP新手之学习类与对象(3)
四.访问控制 对属性或方法的访问控制,是通过在前面添加关键字 public.protected 或 private 来实现的.由 public 所定义的类成员可以在任何地方被访问:由 protecte ...
- redis 2 字符串 和 hash
string是最简单的类型,一个key对应一个value,string类型是二进制安全的.redis的string可以包含任何数据,比如JPG图片或者序列化的对象 操作 set 设置key ...
- Struts2文件的下载
1.下载登录页面download.jsp 1: <%@ page language="java" contentType="text/html; charset=U ...
- 解决mysql 1864 主从错误
从字面意思看了一下是因为slave_pending_jobs_size_max默认值为16777216(16MB),但是slave接收到的slave_pending_jobs_size_max为 ...
- package.json 里 devDependencies和dependencies的区别
我们在使用npm install 安装模块或插件的时候,有两种命令把他们写入到 package.json 文件里面去,比如: --save-dev --save 在 package.json 文件里面 ...
- leetcode难度及面试频率
转载自:LeetCode Question Difficulty Distribution 1 Two Sum 2 5 array sort set ...