hadoop cdh4.6.0编译方法

简介:

最近因为要改hadoop的一些代码,需要重新编译,测试环境是用cdh4.6.0做debug,简单记录下hadoop的编译方法:

1)编译环境需要下面几个包

1
yum  install  lzo-devel zlib-devel gcc autoconf automake libtool ncurses-devel openssl-devel  cmake

2)需要mvn/ant环境

3)在src目录下运行

1
mvn  package  -DskipTests -Pdist, native  -Dtar -e -X

4)protobuf的版本要求,cdh4.6.0需要 *2.4*版本

如果protobuf版本不匹配会报如下错误,并导致hadoop-common无法编译完成:

1
2
3
4
5
      [exec] Required version of  'protoc'  is  2.4 .0a, reported libprotoc  2.5 . 0 
....
Caused by: 
/home/caiguangguang/hadoop- 2.0 . 0 -cdh4. 6.0 /src/hadoop-common-project/hadoop-common/target/antrun/build-main.xml: 33 :
  exec returned:  1

通过这个build-main.xml文件,可以看到是和protobuf有关

错误由下面脚本导致(也可以看出protobuf是2.4.x版本即可):

1
2
3
4
5
6
7
8
9
10
11
12
hadoop-common-project/hadoop-common/target/compile-proto.sh                                           
#!/bin/bash
PROTOC= "$HADOOP_PROTOC_CDH4_PATH"
if  "${PROTOC}X"  "X"  ]; then
   PROTOC= "protoc"
fi
PROTOC_VERSION=`${PROTOC} --version`
if  [[  "${PROTOC_VERSION}"  != * 2.4 * ]]; then
   echo  "Required version of 'protoc' is 2.4.0a, reported ${PROTOC_VERSION}"
   exit  1
fi
....

编译安装protobuf的方法:

1
./configure --prefix=/home/protobuf && make && make install  (安装完成后注意加载lib目录)

protoc  --version  #PATH增加这个/home/protobuf/bin目录



本文转自菜菜光 51CTO博客,原文链接:http://blog.51cto.com/caiguangguang/1588495,如需转载请自行联系原作者

相关文章
|
4月前
|
SQL 分布式计算 数据可视化
基于Hadoop的大数据可视化方法
【8月更文第28天】在大数据时代,有效地处理和分析海量数据对于企业来说至关重要。Hadoop作为一个强大的分布式数据处理框架,能够处理PB级别的数据量。然而,仅仅完成数据处理还不够,还需要将这些数据转化为易于理解的信息,这就是数据可视化的重要性所在。本文将详细介绍如何使用Hadoop处理后的数据进行有效的可视化分析,并会涉及一些流行的可视化工具如Tableau、Qlik等。
160 0
|
5月前
|
存储 分布式计算 资源调度
hadoop确认格式化的方法
【7月更文挑战第21天】
94 5
|
7月前
|
分布式计算 Hadoop Java
hadoop的基础设施-protobuf-2.5.0编译和安装
hadoop的基础设施-protobuf-2.5.0编译和安装
71 0
|
机器学习/深度学习 分布式计算 资源调度
Hadoop3 Centos 7编译安装和文件配置(内附编译好的包)
Hadoop3 Centos 7编译安装和文件配置(内附编译好的包)
302 1
|
分布式计算 Hadoop Java
spark编译:构建基于hadoop的spark安装包及遇到问题总结
spark编译:构建基于hadoop的spark安装包及遇到问题总结
381 0
spark编译:构建基于hadoop的spark安装包及遇到问题总结
|
分布式计算 Java Hadoop
X86系统基于Centos8的Hadoop3.x源码编译
X86系统基于Centos8的Hadoop3.x源码编译
292 0
X86系统基于Centos8的Hadoop3.x源码编译
|
SQL 分布式计算 关系型数据库
Spark SQL CLI部署CentOS分布式集群Hadoop上方法
Spark SQL CLI部署CentOS分布式集群Hadoop上方法
223 0
Spark SQL CLI部署CentOS分布式集群Hadoop上方法
|
分布式计算 算法 网络协议
Hadoop安装Hbase启动失败报错解决方法
Hadoop安装Hbase启动失败报错解决方法
1442 0
Hadoop安装Hbase启动失败报错解决方法
|
分布式计算 Oracle Java
ARM64 环境利用 docker 编译 hadoop-2.7.7
ARM64 环境利用 docker 编译 hadoop-2.7.7
384 0
|
存储 资源调度 分布式计算
Hadoop集群启动和停止方法
Hadoop集群启动和停止方法
483 0

相关实验场景

更多