在64位操作系统中重编译hadoop 2.2.0
2014-03-27 19:49
357 查看
在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.0是32位的,而操作系统是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
相关文章推荐
- 64位操作系统下重新编译hadoop-2.2.0
- hadoop2.2.0遇到64位操作系统平台报错,重新编译hadoop
- 64位操作系统下重新编译hadoop-2.2.0
- 在64位操作系统中重编译hadoop 2.2.0
- 64位CentOS上编译 Hadoop 2.2.0
- Hadoop2.2.0 64位源码编译手记(centos6.4)
- 【hadoop】 1008-使用64位Linux编译hadoop2.2.0
- 编译官网hadoop-2.2.0至64位
- Ubuntu64位条件下Hadoop2.2.0编译
- Hadoop-2.2.0 Linux 64位系统本地库编译
- hadoop2.2.0 版本编译64位native库的问题
- centOS6.5-64位系统下编译hadoop2.2.0源码解决依赖本地库问题
- CentOS6.5编译部署64位Hadoop2.2.0
- hadoop2.2.0编译--centos6.4-64位
- 64位LINUX下hadoop2.2.0重新编译及安装步骤
- Centos6.5 下编译64位 Hadoop 2.2.0
- SUSE Linux 64位环境下编译hadoop2.2.0源码
- hadoop2.2.0编译--centos6.4-64位
- hadoop前戏配置三:hadoop 2.2.0 重新编译为64位,个人测试成功
- 64位CentOS上编译 Hadoop 2.2.0