文档章节

hadoop2.6.0 在64位CentOS 6.4系统上的编译

霖_柒
 霖_柒
发布于 2015/12/31 17:30
字数 910
阅读 580
收藏 5

直接使用官网上下载的hadoop2.6.0在运行时候经常都会遇到WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable警告
这是因为hadoop本地库和系统不兼容导致,这个时候我们就需要手动在系统上编译hadoop了


所需包:
jdk-6u29-linux-x64.bin
下载地址:http://download.csdn.net/detail/tonylllz/9385886

apache-ant-1.9.6-bin.tar.gz
下载地址:http://download.csdn.net/detail/tonylllz/9385789

apache-maven-3.2.5-bin.tar.gz
下载地址:http://download.csdn.net/detail/tonylllz/9385793

findbugs-3.0.1.tar.gz
下载地址:http://download.csdn.net/detail/tonylllz/9385813

hadoop-2.6.0-src.tar.gz
下载地址:http://download.csdn.net/detail/tonylllz/9385803

protobuf-2.5.0.tar.gz
下载地址:http://download.csdn.net/detail/tonylllz/9385811

这里需要注意:
①因为笔者的linux系统是64位的所以需要的jdk也必须是64位的,否则在编译过程会一直去寻找32位的各个插件进行运行,进而导致错误
②protobuf必须是2.5.0版本的

好了,下面我们开始安装、编译吧~

①jdk安装:

./jdk-6u29-linux-x64.bin
mv ./$jdk_bin_dir /usr/local/jdk
ln -s /usr/local/jdk/bin/java /usr/bin/java
ln -s /usr/local/jdk/bin/jps /usr/bin/jps

vim /etc/profile 添加
export JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin:

保存退出/etc/profile,并执行 source /etc/profile



执行java -version  若出现一下内容则表示jdk安装成功

②安装protobuf


因为protobuf的安装需要用到c++编译,所以这里需要安装gcc 等工具
yum -y install gcc+ gcc-c++
yum -y install make

tar zxvf protobuf-2.5.0.tar.gz
cd protobuf-2.5.0
./configure --prefix=/usr/local/protobuf
make
make check
make install

vim /etc/profile 添加
export PATH=$PATH:/usr/local/protobuf/bin/
export PKG_CONFIG_PATH=/usr/local/protobuf/lib/pkgconfig/
保存退出/etc/profile,并执行 source /etc/profile

配置动态链接库路径
vim /etc/ld.so.conf
插入:
/usr/local/protobuf/lib

执行 protoc --version 出现以下内容则表示安装成功
libprotoc 2.5.0



③安装ant

tar zxvf apache-ant-1.9.6-bin.tar.gz
vim /etc/profile 添加
export ANT_HOME=/home/hadoop/apache-ant-1.9.6
export PATH=$PATH:$ANT_HOME/bin
保存退出/etc/profile,并执行 source /etc/profile






④安装maven

tar zxvf apache-maven-3.2.5-bin.tar.gz
vim /etc/profile 添加
export MAVEN_HOME=/home/hadoop/apache-maven-3.2.5
export PATH=$PATH:$MAVEN_HOME/bin
保存退出/etc/profile,并执行 source /etc/profile



⑤安装findbugs

tar zxvf findbugs-3.0.1.tar.gz
vim /etc/profile 添加
export FINDBUGS_HOME=/home/hadoop/findbugs-3.0.1
export PATH=$PATH:$FINDBUGS_HOME/bin
保存退出/etc/profile,并执行 source /etc/profile



⑤开始编译

在编译hadoop过程会需要用到cmake,automake,libtool,zlib,openssl 所以这里我们也先安装下,可以直接用linux的yum安装
yum -y install cmake
yum -y install automake
yum -y install libtool
yum -y install zlib
yum -y install zlib-devel
yum -y install openssl
yum -y install openssl-devel

查看PATH系统变量至少包括下面内容:



tar zxvf hadoop-2.6.0-src.tar.gz
cd hadoop-2.6.0-src
mvn package -Pdist,native -DskipTests -Dtar

如果是第一次编译所需的时间会比较久,因为需要去远程仓库将要用的包一个个下载下来,若有现车的仓库,可以直接上传到linux的本地库,这样会加快编译的速度。

编译成功后显示



编译成功后的包在 hadoop-2.6.0-src/hadoop-dist/target下



补充说明下,编译过程难免会遇到问题,本篇文件已经将遇到的问题所需的包都在编译前提出,并安装好了,但大家的系统环境难免和笔者有所不同。这里举例说明下在遇到编译错误的时候该如何去解决

解决方法:
yum -y install zlib
yum -y install zlib-devel



© 著作权归作者所有

共有 人打赏支持
霖_柒
粉丝 1
博文 15
码字总数 19843
作品 0
福州
U盘、移动硬盘引导启动安装linux系统【Centos 6.4 】

U盘、移动硬盘引导启动安装linux系统【Centos 6.4 】 U盘、移动硬盘引导启动安装linux系统【Centos 6.4 】( rhel基本相同) 本文案例是我安装32系统的,64位时U盘单个文件大于4G不能fat32格式...

yufulinux
2014/05/09
0
0
U盘、移动硬盘引导启动安装linux系统【Centos 6.4 】

U盘、移动硬盘引导启动安装linux系统【Centos 6.4 】 U盘、移动硬盘引导启动安装linux系统【Centos 6.4 】( rhel基本相同) 本文案例是我安装32系统的,64位时U盘单个文件大于4G不能fat32格式...

yufulinux
2014/05/09
0
0
U盘移动硬盘引导启动安装linux系统Centos 6.4

U盘、移动硬盘引导启动安装linux系统【Centos 6.4 】 U盘、移动硬盘引导启动安装linux系统【Centos 6.4 】( rhel基本相同) 本文案例是我安装32系统的,64位时U盘单个文件大于4G不能fat32格式...

yufulinux
2014/05/09
0
0
centos-LiveDVD安装出错了【我可耻的伸手了】

小白第一次接触linux,看了鸟哥的书后决定安装centos学习。 我的电脑是64位系统,最开始选择的是binDVD1,但是经反复失败后,发现由于单个文件过大,不能装进U盘 后来选择了LiveDVD版本,按照...

年轻的小蜜蜂
2013/09/29
2.3K
12
CentOS6.5升级手动安装GCC4.8.2

一、简易安装 操作环境 CentOS6.5 64bit,原版本4.4.7,不能支持C++11的特性~,希望升级到4.8.2 不能通过yum的方法升级,需要自己手动下载安装包并编译 1.1 获取安装包并解压 wget http://ft...

bengozhong
2016/02/20
46
0

没有更多内容

加载失败,请刷新页面

加载更多

使用JavaScript ES6的新特性计算Fibonacci(非波拉契数列)

程序员面试系列 Java面试系列-webapp文件夹和WebContent文件夹的区别? 程序员面试系列:Spring MVC能响应HTTP请求的原因? Java程序员面试系列-什么是Java Marker Interface(标记接口) 使...

JerryWang_SAP
29分钟前
2
0
docker安装redis、mongodb、mysql等

一、启动docker服务,设置镜像: systemctl start dockervi /etc/docker/daemon.json{ "registry-mirrors": ["https://registry.docker-cn.com"]} 二、下拉镜像: 在镜像中心h...

狼王黄师傅
53分钟前
2
0
deepin系统使用deepin-wine安装exe程序

deepin自带原生deepin-wine使用命令如下: deepin-wine QQBrowser.exedeepin-wine QQMusicSetup.exe 默认安装的快捷方式位置: /root/.wine/drive_c/'Program Files'/Tencent/QQBrowser/......

临江仙卜算子
今天
4
0
快速get到学习Linux操作系统的点

快速get到学习Linux操作系统的点 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能够运行主要的UNIX工具软件...

linuxCool
今天
7
0
聊聊:Linux分区的那些方案

安装linux的整体步骤其实比较简单,唯一可能值得说明的地方,大概就是linux的分区了。 下面来给大家推荐一些分区方案。 1 分两个区 实际上,很多时候我们只需要分两个区:`/`和交换分区,日常...

Linux就该这么学
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部