Centos6.5 下编译64位 Hadoop 2.2.0

背景介绍

1. 问题阐述:
在运行hadoop的时候,出现警告:

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

2. 原因:
Apache提供的hadoop本地库是32位的,而在64位的服务器上就会有问题,因此需要自己编译64位的版本ehe

3.验证
进入hadoop包里

cd  /opt/temp/hadoop-2.2.0_32/lib/native
file  libhadoop.so.1.0.0
  • 若出现下面信息,则为64位

ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped

  • 若出现下面信息,则为32位

ELF 32bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not stripped


编译前准备

1. 安装 gcc

yum install gcc

2. gcc-c++

yum install gcc-c++

这样可以避免出现问题:Cannot find appropriate C++ compiler on this system

3. JAVA
具体可参考笔者相关博文 Centos6.5 JAVA配置

4. 编译前准备其他Linux安装依赖包

yum install autoconf  automake  libtool  cmake  
yum install ncurses-devel
yum install openssl-devel
yum install lzo-devel  zlib-devel 
  • 检查是否安装成功: xxx --version

    autoconf (GNU Autoconf) 2.63
    automake (GNU automake) 1.11.1
    ltmain.sh (GNU libtool) 2.2.6b

5. 安装maven
具体可参考笔者相关博文 Centos6.5 下 Maven 安装

6. 安装protobuf

tar -zxvf protobuf-2.5.0.tar.gz
  • 进入protobuf-2.5.0目录,执行下面的命令
./configure
make
make check  
make install

其中 make check 这个步骤非常耗时

  • 检验 protoc --version 看能否出现 libprotoc 2.5.0 信息

7. 安装cmake

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值