hadoop-2.6.4本地编译

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

编译源码的目的一是解决上面的warn,二是hadoop的压缩只有编译之后才支持。
一直用的这个2.6.4版本,时间久了,重新拿出来编译一下,有些坑,记录一下,各个版本之间的版本要求可能不一样,比如jdk……

先看src目录下的BUILDING.txt文件头

  • Unix System
  • JDK 1.6+ (hadoop-2.6.4不能用jdk1.8的,编译会出错,亲测)
  • Maven 3.0 or later
  • Findbugs 1.3.9 (if running findbugs) (编译Hadoop-2.7.3的时候好像需要安装这个)
  • ProtocolBuffer 2.5.0
  • CMake 2.6 or newer (if compiling native code), must be 3.0 or newer on Mac
  • Zlib devel (if compiling native code)
  • openssl devel ( if compiling native hadoop-pipes )
  • Internet connection for first build (to fetch all Maven and Hadoop dependencies)

环境安装好之后的效果演示

[zcy@master ~]$ mvn -v
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)

[dove@master hadoop-2.7.3-src]$ findbugs -version
3.0.1

[zcy@master ~]$ protoc --version
libprotoc 2.5.0

[zcy@master ~]$ make -version
GNU Make 3.81

[zcy@master ~]$ openssl version
OpenSSL 1.0.1e-fips 11 Feb 2013

1.yum安装(来源于网络,都先装上吧)

sudo yum -y install svn   
sudo yum -y install ncurses-devel   
sudo yum -y install gcc*
sudo yum -y install lzo-devel   
sudo yum -y install zlib-devel   
sudo yum -y install autoconf   
sudo yum -y install automake   
sudo yum -y install libtool   
sudo yum -y install cmake   
sudo yum -y install openssl

2.安装 protobuf(不安装,编译将无法完成)

hadoop使用protocol buffer进行通信,需要下载和安装protobhf-2.5.0.tar.gz;由于官网已经无法下载了,
可以到百度云盘下载http://pan.baidu.com/s/1eSrdvNG
编译安装 protobuf
    $ sudo ./configure 
    $ sudo make 
    $ sudo make check 
    $ sudo make install 
将protobuf配置到环境里面去
sudo nano /etc/profile
export LD_LIBRARY_PATH=/usr/protobuf-2.5.0
    protoc --version
    libprotoc 2.5.0

3.添加maven的环境(最低3.0)

export MAVEN_HOME=/usr/apache-maven-3.3.9
export PATH=$PATH:$MAVEN_HOME/bin

4.安装Findbugs

wget http://prdownloads.sourceforge.net/findbugs/findbugs-3.0.1.tar.gz  或 百度云盘下载http://pan.baidu.com/s/1bSjaxw
添加环境变量
export FINDBUGS_HOME=/usr/findbugs-3.0.1
export PATH=$PATH:$FINDBUGS_HOME/bin

5.先调整mvn的内存

export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m" (此条命令来源于spark官网.....)

6.编译hadoop

mvn package -Pdist,native -DskipTests -Dtar (命令来源于./hadoop-2.6.4-src/BUILDING.txt)

遇见的问题:

在编译hadoop-2.6.4的时候,jdk不能使用jdk1.8.0_101
把jdk的版本降到jdk1.7.0_67 成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值