zoukankan      html  css  js  c++  java
  • hadoop编译

    说明:

    hadoop版本:hadoop-2.5.0-cdh5.3.6

    环境:centos6.4

    必须可联网

    hadoop 下载网址: http://archive.cloudera.com/cdh5/cdh/5/

    其实编译还真就是体力活,按照官方的说明,一步步往下做就可以了,不过总会遇到坑。。

    编译步骤

    1、下载源码,解压,本例中解压到 /opt/softwares下:

    命令: tar -zxvf hadoop-2.5.0-cdh5.3.6-src.tar.gz -C /opt/softwares

    2、进入到解压后的目录,有BUILDING.txt,查看:

    命令: cd /opt/softwares/hadoop-2.5.0-cdh5.3.6

             cat BUILDING.txt

    文档里对编译事项进行了说明,如下图:

    要编译hadoop,系统上必须要装这些软件。

    (1)系统为linux,已符合条件

    (2)JDK版本1.6以上:

    本机装JDK1.7.0_67,配置好环境变量。在装JDK之前,建议大家首先看一下系统上有没有装,如果有装,低于1.6版本,最好先把之前的卸载掉再装。

    装完之后,配置好环境变量,一定要用 java -version 查看一下是不是对应的版本号。

    这里有个坑,如果你之前的版本没有卸载掉,低于1.6版本,那么编译的时候会默认之前的版本,然后就~~~你懂得。。。

    (3)安装maven,本机安装maven3.0.5,,官网下载地址:https://archive.apache.org/dist/maven/maven-3/

         装完之后,配置环境变量(参考官方说明)

    (4)findbugs 这个我没有装,主要是查找bug用的。非必须的。

    (5)protocolBuffer ,protoc buffer是hadoop的通信工具。

    建议大家环境准备的差不多了,最后再装这个,后面会给出具体说明步骤

    (6)安装cmake:

    命令:yum install autoconf automake libtool cmake

    显示complete即安装完成(下同,不再贴图)

    (7)安装 zlib devel :很多系统都已经自带了。

    命令:yum install zlib devel

    (8)安装ncurses-devel

    命令:yum install ncurses-devel

    (9)安装openssl-devel

    命令:yum install openssl-devel

    (10)最后,一定要安装gcc相关组件

    命令:yum install gcc*

    (11)现在回头来看protobuf的安装:

    下载protobuf-2.5.0.tar.gz: http://pan.baidu.com/s/1pJlZubT (这不是我的,参考网址:http://www.tuicool.com/articles/jM7Nn2/)

    解压 tar -zxvf protobuf-2.5.0.tar.gz

    进入到解压目录 protobuf-2.5.0:

    (1)执行 ./configure

    (2)执行 make

    (3)执行 make check

    (4)执行make install

    完毕后,输入protoc –version,若返回如下结果,则安装成功:

    到此,环境就准备的差不多了

    现在开始编译源码:

    回头看BUILDING.txt,编译的命令:

    既然编译了,那肯定是需要native本地库的。文档的话,没必要用(坑:最初几次编译,我都用了这个命令,mvn package -Pdist,native,docs -DskipTests -Dtar

    一直不成功,都出错在同一个问题上,至今不知怎么解决。docs不用生成,没什么作用。改成mvn package -Pdist,native -DskipTests -Dtar,果然编译成功。

    进入hadoop-2.5.0-cdh5.3.6目录,执行命令:

    mvn package -Pdist,native -DskipTests -Dtar

    等待编译成功。

    这里说下编译的过程中出现的问题,主要就是下面图中所展示的问题:

    一般出现这个问题,可能是由于网络原因,第一次没有下载成功,第二次继续下载,引起冲突。解决方法是,到maven

    本地库中删掉这个jar包,重新运行命令编译。编译过程中,由于网络不佳,我这里出现了三次类似的问题,都是同样的方法解决的。

    编译成功之后(差不多就是下面的图示O(∩_∩)O),

    进入到hadoop-2.5.0-cdh5.3.6/hadoop-dist/target,可以看到编译好的hadoop.如果你之前就装了此版本的hadoop,只不过没有编译,会出现加载不了本地库的警告,那么可以进入到target/hadoop-2.5.0-cdh5.3.6/lib中,拷贝native放在你原来的hadoop对应的lib下,就不会再出现警告。

     

  • 相关阅读:
    程序员是怎么炼成的---OC题集--练习答案与题目(3)
    程序员是怎么炼成的---OC题集--练习答案与题目(2)
    152. Maximum Product Subarray
    151. Reverse Words in a String
    150. Evaluate Reverse Polish Notation
    148. Sort List
    147. Insertion Sort List
    145. Binary Tree Postorder Traversal
    144. Binary Tree Preorder Traversal
    140. Word Break II
  • 原文地址:https://www.cnblogs.com/lovely-doodle/p/5737636.html
Copyright © 2011-2022 走看看