hadoop 2.7.3 源码编译教程
1.工具准备,最靠谱的是hadoop说明文档里要求具备的那些工具。
到hadoop官网,点击source下载hadoop-2.7.3-src.tar.gz。
解压之
tar -zxvf hadoop-2.7.3-src.tar.gz
得到hadoop-2.7.3-src文件夹。
进入hadoop-2.7.3-src文件夹,查看BUILDING.txt
cd hadoop-2.7.3-src vim BUILDING.txt
可以看到编译所需的库或者工具:
包括:
JDK1.7+
maven 3.0 or later
findbugs 1.3.9
protocolBuffer 2.5.0
cmake 2.6
zlib-devel
openssl-devel
除了上面这些,为了不出错,实际还需要autoconf automake gcc等。
下面开始准备这些工具:
首先使用su命令获取root权限,以免受到各种限制
2.下载jdk-7u102-linux-x64.tar.gz,解压后移动到/opt目录下
tar -zxvf jdk-7u102-linux-x64.tar.gz
mv jdk1.8.0_102/opt
然后打开/etc/profile配置jdk环境变量
vim /etc/profile
按 i 进入插入模式,在文件末尾添加
export JAVA_HOME=/opt/jdk1.8.0_102
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
export JRE_HOME=/opt/jdk1.8.0_102/jre
export PATH=$PATH:$JRE_HOME/bin
先后按Esc, Shift+:, wq, 回车即可保存并退出编辑。
输入 source /etc/profile 回车即可保存更改。
运行javac -version 查看状态:
3.下面安装各种库,
yum -y install svn ncurses-devel gcc*
yum -y install lzo-devel zlib-devel autoconf automake libtool cmake openssl-devel
4.安装protobuf-2.5.0.tar.gz(注意版本必须是2.5.0)
protobuf-2.5.0.tar.gz下载地址:
------------------------------------------分割线------------------------------------------
免费下载地址在http://linux.linuxidc.com/
用户名与密码都是www.linuxidc.com
具体下载目录在/2015年资料/10月/10日/CentOS7下用JDK1.7编译Hadoop-2.7.1全过程详解/
下载方法见http://www.linuxidc.com/Linux/2013-07/87684.htm
------------------------------------------分割线------------------------------------------
tar zxvf protobuf-2.5.0.tar.gz
进入protobuf-2.5.0依次执行
cd protobuf-2.5.0 进入目录
假如 你希望编译成功后输出的目录 为 /home/work /protobuf/ 则输入如下两条命令:
./configure --prefix=/home/work /protobuf/
make && make install
编译成功后将export PATH= /home/work /protobuf/bin:$PATH加入到环境变量中
最后输入 protoc --version命令,如显示libprotoc 2.5.0则安装成功
5.安装maven (注意,如果下载很慢或者经常失败,建议更换maven的下载源,方法在另一篇博客中有说明)
下载apache- maven- 3.3.3- bin.tar.gz
解压缩并配置环境变量
解压:
tar -zxvf apache-maven-3.3.3-bin.tar.gz
移动到/opt目录下:
mv apache-maven-3.3.3 /opt
配置环境变量:
vim /etc/profile
在末尾添加:
export MAVEN_HOME=/opt/apache-maven-3.3.3
export MAVEN_OPTS="-Xms256m -Xmx512m"
export PATH=$PATH:$MAVEN_HOME/bin
先按Esc, Shift+:, wq, 回车即可保存并推出编辑。
输入 source /etc/profile 回车即可保存更改。
查看安装状态: mvn -version
看到
6.安装ant
下载apache-ant-1.9.4-bin.tar.gz
解压缩并配置环境变量
解压:
tar -zxvf apache-ant-1.9.4-bin.tar.gz
移动到/opt目录下
mv apache-ant-1.9.4 /opt
配置环境变量
同上,在/etc/profile文件末未添加:
export ANT_HOME=/opt/apache-ant-1.9.4
export PATH=$PATH:$ANT_HOME/bin
然后保存,退出,并使更改生效。
查看安装结果:
ant -version
7.安装findbugs
下载findbugs-3.0.1.tar.gz,选择上面的standard version即可
解压缩并配置环境变量
解压:
tar -zxvf findbugs-3.0.1.tar.gz
移动到 /opt目录下
mv findbugs-3.0.1 /opt
配置环境变量:
在 /etc/profile 文件末尾添加:
export FINDBUGS_HOME=/opt/findbugs-3.0.1
export PATH=$PATH:$FINDBUGS_HOME/bin
保存退出,并使更改生效。
查看安装结果
8.准备完成,下面开始编译hadoop
进入到hadoop-2.7.3-src目录
vim hadoop-common-project/hadoop-auth/pom.xml
vim /hadoop-common-project/hadoop-common/pom.xml
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-annotations</artifactId>
<scope>compile</scope>
</dependency>
将节点hadoop-annotations的值由provide 改成compile
使用命令:
mvn clean package –Pdist,native –DskipTests –Dtar
或者:
mvn package -Pdist,native -DskipTests -Dtar
进行编译。
务必保持网络畅通,经过漫长的等待(本人的比较慢,花了2小时57分钟)!
编译好的文件在/hadoop-dist/target/hadoop-2.7.3.tar.gz下。
注意事项:
1.所有命令,建议手敲,不建议复制粘贴,以避免因为页面空格造成的不必要错误。
2.务必保持网络畅通,如果出现缺少某个文件,则要先清理maven(使用命令 mvn clean) 再重新编译。
3.如果总是出现同一个错误导致编译失败,则可能是缺少某个库或者工具,检查上述工具是否都安装成功,并且版本正确。
hadoop 2.7.3 源码编译教程的更多相关文章
- 基于cdh5.10.x hadoop版本的apache源码编译安装spark
参考文档:http://spark.apache.org/docs/1.6.0/building-spark.html spark安装需要选择源码编译方式进行安装部署,cdh5.10.0提供默认的二进 ...
- Mysql 源码编译教程贴
题外话:这是一篇教程贴,不仅学的是mysql的编译,还是一些编译的知识.我也是一个菜鸟,写一些感悟和心得,有什么问题可以批评指正,谢谢! 如果只是为了安装请移到我的另一篇安装贴: Mysql安装贴 环 ...
- Hadoop(一)Hadoop的简介与源码编译
一 Hadoop简介 1.1Hadoop产生的背景 1. HADOOP最早起源于Nutch.Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页抓取.索引.查询等功能,但随着抓取网页数量的增加, ...
- hadoop 2.5.2源码编译
编译过程漫长无比,错误百出,需要耐心耐心!! 1.准备的环境及软件 操作系统:Centos6.4 64位 jdk:jdk-7u80-linux-x64.rpm,不要使用1.8 maven:apache ...
- 独一无二 hortonworks spark 源码编译教程
hortonworks的源码在github上能找到! https://github.com/hortonworks/spark2-release 找到对应版本release源码后下载到本地 在wind ...
- Ogre源码编译教程
最近突然发现Ogre引擎更新到2.1版本了,既然依旧是代码开源,本着学习的精神就下载下来弄弄.但是官网提供的SDK版本只有1.9的,考虑到学习的便利性,因此最好从Source版本开始弄,这样的话以后想 ...
- 保姆级教程——Ubuntu16.04 Server下深度学习环境搭建:安装CUDA8.0,cuDNN6.0,Bazel0.5.4,源码编译安装TensorFlow1.4.0(GPU版)
写在前面 本文叙述了在Ubuntu16.04 Server下安装CUDA8.0,cuDNN6.0以及源码编译安装TensorFlow1.4.0(GPU版)的亲身经历,包括遇到的问题及解决办法,也有一些 ...
- Hadoop源码编译过程
一. 为什么要编译Hadoop源码 Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通 ...
- Hadoop,HBase,Zookeeper源码编译并导入eclipse
基本理念:尽可能的参考官方英文文档 Hadoop: http://wiki.apache.org/hadoop/FrontPage HBase: http://hbase.apache.org/b ...
随机推荐
- ef AddDays报错
ef func写法,在语句中不能使用adddays方法 )); 这样写就是不行 可以改为: ); 下面是我的一个案例,虽然到了最后都没有实现功能! public List<ContractBud ...
- 【BZOJ1951】[Sdoi2010]古代猪文 Lucas定理+CRT
[BZOJ1951][Sdoi2010]古代猪文 Description 求$X=\sum\limits_{d|n}C_n^d$,$Ans=G^X (\mod 999911659)$. Input 有 ...
- ORACLE数据库事务隔离级别
转自:https://www.cnblogs.com/jackal/archive/2011/02/14/1954231.html 事务隔离级别:一个事务对数据库的修改与并行的另一个事务的隔离程度. ...
- [转]python-元类
转载于:刘羽冲 两句话掌握python最难知识点——元类 千万不要被所谓“元类是99%的python程序员不会用到的特性”这类的说辞吓住.因为每个中国人,都是天生的元类使用者 学懂元类,你只需要知道两 ...
- 【文章阅读】详解MySQL数据类型
详解MySQL数据类型 - 五月的仓颉 - 博客园 http://www.cnblogs.com/xrq730/p/8446246.html 注:对于MySQL的数据类型做了详细的讲解,这是我看过的最 ...
- C#操作AD及Exchange Server总结(二)
上一节C#操作AD及Exchange Server总结(一)写了对AD的操作,新建AD用户后,通常都需要为此用户开启Exchange邮箱,接下来写如何远程操作Exchange. 三.对Exchange ...
- 天天QA
w 0-Qphp 在全局范围内访问变量有哪几种方法A2种 <?php$a = 1;$b = 2;var_dump($GLOBALS); <?php$a = 1;$b = 2; functi ...
- python基础之类的封装
从封装本身的意思去理解,封装就好像是拿来一个麻袋,把小猫,小狗,小王八,还有alex一起装进麻袋,然后把麻袋封上口子.但其实这种理解相当片面 一 封装什么 你钱包的有多少钱(数据的封装) 你的性取向( ...
- 如何重定向 stderr ?
可以使用该方法写一个轻量级日志类 #include <cstdio> int main() { FILE *stream = freopen("freopen.txt" ...
- Css选择器定位详解
1.使用 class 属性来定位元素,方法如下: driver.findElement(By.cssSelector("input.login")); 即可以先指定一个 HTML的 ...