在64位操作系统中重编译hadoop 2.2.0

来源:互联网 发布:淘宝羊群效应 编辑:程序博客网 时间:2024/04/30 09:05

64位操作系统中重编译hadoop 2.2.0

最近为了做一些测试,在CentOS6.5中部署Hadoop 2.2.0。从官方网站下载hadoop-2.2.0.tar.gz的安装包,部署安装后发现不能运行提示:

 WARNutil.NativeCodeLoader: Unable to load native-hadoop library for yourplatform... using builtin-java classes where applicable错误。

 通过命令查看本地库发现软件是中的libhadoop.so.1.0.032位的,而操作系统是64位的。所以很悲催`````````只能自己编译hadoop安装包。

具体可以通过下面的命令查看libhadoop.so.1.0.0的情况:

#file ${HADOOP_HOME}/lib/native/libhadoop.so.1.0.0 

/hadoop/hadoop-2.2.0/lib/native/libhadoop.so.1.0.0: ELF 32-bit LSB shared object, Intel 80386,version 1 (SYSV), dynamically linked, not stripped

解决办法:重新编译安装包

确保机器能连接到网络,如果连不上,请下载对应的安装包,手动安装。

一.下载hadoop 2.2.0的源程序hadoop-2.2.0-src .tar.gz (推荐)

或者通过svn来下载:(这种方式比较慢)

# svn co 'http://svn.apache.org/repos/asf/hadoop/common/tags/release-2.2.0'

二.编译的开发环境安装

必要的有JDK,svn,cmake,ncurses,openssl,gcc,maven,protobuf

1. #yum install svn

 #yum install autoconfautomake libtool cmake

  #yum install openssl-devel

  #yum install ncurses-devel

  #yum install gcc*

2.安装maven

下载并解压maven:http://maven.apache.org/download.cgi

#mvapache-maven-3.1.1 /usr/local

/usr/local/mvapache-maven-3.1.1/bin加载到环境变量中

3.安装protobuf

 从https://code.google.com/p/protobuf/downloads/list

  中下载protobuf-2.5.0.tar.gz,解压安装包,进入protobuf根目录,执行下面命令:

  #.configure

  #make

  #make check

  #make install

  #protoc --version

  libprotoc 2.5.0

三.编译Hadoop

安装完上面的编译开发环境后,可以进行编译hadoop,进入hadoop的根目录,执行下面的命令:

$ mvn package -Pdist,native -DskipTests -Dtar

整个编译时间比较长,耐心等待~~~~~~

最后提示整个编译情况:

[INFO] Apache Hadoop Mini-Cluster........................ SUCCESS [2.151s]

[INFO]------------------------------------------------------------------------

[INFO] BUILD SUCCESS

[INFO]------------------------------------------------------------------------

[INFO] Total time: 31:17.81s

[INFO] Finished at: Tue Mar 24 19:23:10 CST2014

[INFO] Final Memory: 78M/239M

[INFO]------------------------------------------------------------------------

 

最后可以通过下面的路径找到已经编译好的安装包:

hadoop-2.2.0-src/hadoop-dist/target/hadoop-2.2.0/

整个编译完成!

重新部署集群环境,部署集群网上很多就不再重复!


也可以通过下面路径下载编译好的64位安装包:http://pan.baidu.com/s/1ntlupaL

0 0
原创粉丝点击