编译64位 hadoop 2.4 源码

来源:互联网 发布:visio 软件开发流程图 编辑:程序博客网 时间:2024/05/24 01:38

最近hadoop版本发布包基本是32位的,生产环境是64位,所以需要重新编译成64位的

生产环境自然不能访问公网,所以得在自己的机器上或者虚拟机上编译,只要能访问外网就行!!!!


主机环境是 64位 CentOs , 安装在虚拟机 (Oracle VM VirtualBox)上。

step 1、安装JDK

     安装JDK从oracle官网下载jdk,

   下载地址是http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html,

   选择  jdk-7u60-linux-x64.rpm下 载。

   先卸载OPENJDK
   rpm -qa|grep java |grep -E "openjdk|gcj"|awk '{print "rpm -e --nodeps "$1}'|sh


  执行以下命令安装Sun JDK
   rpm -i   jdk-7u60-linux-x64.rpm
  会生成一个文件夹jdk1.7.0_60,然后设置环境变量中。
  执行命令 vi/etc/profile,增加以下内容到配置文件中,结果显示如下

  export JAVA_HOME=/usr/java/jdk1.7.0_60
  export JAVA_OPTS="-Xms1024m-Xmx1024m"
  exportCLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH
  export PATH=$JAVA_HOME/bin:$PATH
 
  保存退出文件后,执行以下命令
  source  /etc/profile
  java –version 看到显示的版本信息是否正确。


step 2: 安装maven

    从maven官网下载,下载地址是http://maven.apache.org/download.cgi,

      选择 apache-maven-3.1.1-bin.tar.gz 下载。
      执行以下命令解压缩maven
      tar -zxvf  apache-maven-3.1.1-bin.tar.gz

      会生成一个文件夹apache-maven-3.1.1,然后设置环境变量中。
      执行命令vi  /etc/profile,编辑结果如下所示
      MAVEN_HOME=/usr/maven/apache-maven-3.1.1
      export MAVEN_HOME
      export PATH=${PATH}:${MAVEN_HOME}/bin
      保存退出文件后,执行以下命令
      source  /etc/profile
      mvn -version


step 3:安装protochadoop

        下载地址是https://code.google.com/p/protobuf/downloads/list,选择protobuf-2.5.0.tar.gz 下载。
       为了编译安装protoc,需要下载几个工具,顺序执行以下命令(一般操作系统上已安装好了)
       yum install gcc 
       yum intall gcc-c++ 
       yum install make
        
        解压缩protobuf
        tar -zxvf protobuf-2.5.0.tar.gz
        会生成一个文件夹protobuf-2.5.0,执行以下命令编译protobuf。
        cd protobuf-2.5.0 
        ./configure --prefix=/usr/local/protoc/ 
        make && make install
        执行完毕后,编译后的文件位于/usr/local/protoc/目录下,我们设置一下环境变量
        执行命令vi  /etc/profile,编辑结果如下所示
        export PATH=${PATH}:/usr/local/protoc/bin
        保存退出文件后,执行以下命令
        source  /etc/profile
        protoc --version


step 4:  安装其他依赖

   顺序执行以下命令
   yum install cmake
   yum install openssl-devel 
   yum install ncurses-devel
   安装完毕即可。
 注: cmake 手动安装
      下载   cmake-3.0.0.tar.gz 
      cp   cmake-3.0.0.tar.gz    /opt/local/
      解压:tar -zxvf  cmake-3.0.0.tar.gz
      安装:
       cd cmake-3.0.0
       ./bootstrap
       make && make install
       ln -s cmake-3.0.0  cmake
       export PATH=${PATH}:/opt/local/cmake/bin


step 5:  编译hadoop2.4源码(一定要在联网环境下编译

                 从hadoop官网下载2.4稳定版,下载地址是http://mirrors.cnnic.cn/apache/hadoop/common/hadoop-2.4.0/,

      下载hadoop-2.4.0-src.tar.gz   下载。

       执行以下命令解压缩hadoop
       tar -zxvf  hadoop-2.4.0-src.tar.gz 
       ln -s hadoop-2.4.0-src  /usr/local/hadoop-2.4.0
       进入到目录/usr/local/hadoop-2.4.0 中,执行命令
       mvn package -Pdist,native  -DskipTests -Dtar


      maven会从外网下载编译期间所需要的jar包,有时会因下载失败,会导致编译失败(buid fail),

      多执行以上的编译命令几次,直到编译成功。
      很要耐心和时间。 *_^
      漫长的等待后,结果还是理想的,可以看到如下的结果:

       

      好了,编译完成了。
      编译后的代码在hadoop-2.4.0-src/hadoop-dist/target下面
0 0