Hadoop-2.3.0-cdh5.0.0获取源码及编译


1、安装Maven
首先下载Maven软件包,
下载地址为:
http://apache.fayea.com/apache-m ... en-3.1.1-bin.tar.gz
百度网盘:
apache-maven-3.2.1.zip
链接: http://pan.baidu.com/s/1jG9QhWa 密码:vmee

下载后解压,设置MAVEN_HOME和PATH变量。设置好后,可以使用mvn -version检查是否安装成功。
解压命令:
  1. tar -zvxf apache-maven-3.1.1-bin.tar.gz

复制代码


移至/usr/local下:
#mvapache-maven-3.1.1 /usr/local/maven
maven装在/usr/local目录下。
#vi /etc/profile
在最后一行加入:
export MAVEN_HOME=/usr/local/ maven
export PATH=$PATH:$MAVEN_HOME/bin
保存后退出,执行:
source /etc/profile
查看是否安装成功。
#mvn –version

2、安装autotool,CMake等依赖包

如果已经安装,可忽略相应的包。
sudo yum install autoconf automake libtool ant gcc gcc-c++  make cmake openssl-devel,ncurses-devel

若安装遇到问题,推荐另外一篇
从零教你在Linux环境下(ubuntu)如何编译hadoop2.4

3、安装protobuf2.5

下载地址 http://protobuf.googlecode.com/files/protobuf-2.5.0.tar.gz
解压: tar jxvf protobuf-2.5.0.tar.gz
次执行:./configure,   make, makeinstall,这三个命令安装ProtoBuffer

使用protoc --version检查ProtoBuffer是否安装成功

如果出现:
protoc: error while loading sharedlibraries: libprotobuf.so.7: cannot open shared object file: No such file ordirectory错误

这是因为系统找不到lib库
编辑/etc/ld.so.conf 文件
#Vim /etc/ld.so.conf
修改如下: include / etc/ld.so.conf.d/*.conf /usr/local/lib
然后ldconfig
再次执行protoc –version
libprotoc 2.4.1
标明protobuf安装成功。

上面软件的安装,如果遇到问题,推荐查看另外一篇: 从零教你在Linux环境下(ubuntu)如何编译hadoop2.4


4、先获取源码
先通过mvn获取源码
   cd hadoop-2.3.0-cdh5.0.1/src/hadoop-maven-plugins
    mvn install
    完成后,
    cd hadoop-2.3.0-cdh5.0.1/src
    mvn eclipse:eclipse –DskipTests
    获取 源码过程中如果出现如下错误:
    Failed to execute goalorg.apache.maven.plugins:maven-antrun-plugin:1.6:run (make) on projecthadoop-common:
   解决方法如下:
   使用这个命令:mvn org.apache.maven.plugins:maven- eclipse-plugin:2.6:eclipse –DskipTests
   或者:通过yum安装 zlib1g-dev

  5、编译源码
然后开始编译 源码
在src 目录下执行
mvn clean install –DskipTests
或者
mvn package -Pdist,native -DskipTests -Dtar

这个要等待很长时间,如果中间出现停掉,可以重新执行该命令,会继续上次下载编译。

由于maven国外服务器可能连不上,先给maven配置一下国内镜像,在maven目录下,conf/settings.xml,在<mirrors></mirros>里添加,原本的不要动

  1.   <mirror>  
  2.        <id>nexus-osc</id>  
  3.         <mirrorOf>*</mirrorOf>  
  4.     <name>Nexusosc</name>  
  5.     <url>http://maven.oschina.net/content/groups/public/</url>  
  6. </mirror>  
复制代码



同样,在<profiles></profiles>内新添加
  1. <profile>  
  2.         <id>jdk-1.7</id>  
  3.        <activation>  
  4.            <jdk>1.4</jdk>  
  5.          </activation>  
  6.         <repositories>  
  7.            <repository>  
  8.              <id>nexus</id>  
  9.              <name>local private nexus</name>  
  10.           <url>http://maven.oschina.net/content/groups/public/</url>  
  11.            <releases>  
  12.               <enabled>true</enabled>  
  13.            </releases>  
  14.             <snapshots>  
  15.              <enabled>false</enabled>  
  16.            </snapshots>  
  17.           </repository>  
  18.         </repositories>  
  19.        <pluginRepositories>  
  20.           <pluginRepository>  
  21.             <id>nexus</id>  
  22.            <name>local private nexus</name>  
  23.             <url>http://maven.oschina.net/content/groups/public/</url>  
  24.            <releases>  
  25.               <enabled>true</enabled>  
  26.             </releases>  
  27.            <snapshots>  
  28.               <enabled>false</enabled>  
  29.            </snapshots>  
  30.           </pluginRepository>  
  31.         </pluginRepositories>  
  32.       </profile>  
复制代码




编译过程会下载所需文件,并且持续很长时间。
编译成功后会生成一个tar包,如下图所示:












编译后的路径在
hadoop-2.3.0-cdh5.0.0/src/hadoop-dist/target
目录下。
内容如下:






进入编译后的hadoop-2.3.0-cdh5.0.0/bin目录。可以查看Hadoop版本
#./Hadoop version


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值