hadoop 2.2.0 源码编译笔记

apache 官方发布的hadoop 2.2.0中只包含了32bit版本,多数生产环境中使用的是64bit的环境,需要64bit的hadoop2.2,则必须自己编译。本文记录在编译过程中遇到的一些问题和相应的解决办法。

1. 系统环境

编译安装之前,请检查系统的环境。开始的时候,我在一台比较老的机器上编译,遇到了一个奇怪的错误,"no such instruction: `crc32***",报错的截图如下:


是一段汇编代码编译出错,经查crc系列指令属于SSE4_2指令集,需要支持该指令集的CPU,但是查看我的系统CPU支持该指令集(使用cat /proc/cpuinfo查看),截图如下:


最后发现是由于我的系统的GCC版本太低导致的问题,我的GCC版本是3.4.5,而SSE4_2指令集要求GCC4.3以上。

由于升级环境或牵连到其它的项目,最后我在另外一台装有CentOS6.4(64bit)的机器上执行编译,并且编译成功。


查看系统版本:

[plain]  view plain copy print ?
  1. uname -a  
Linux ** 2.6.32_1-7-0-0 #1 SMP *** x86_64 x86_64 x86_64 GNU/Linux

查看gcc版本:

[plain]  view plain copy print ?
  1. gcc --version  

gcc (GCC) 3.4.5 20051201 (Red Hat 3.4.5-2)

我们的编译器版本非常的低

查看CPU信息:

[plain]  view plain copy print ?
  1. cat /proc/cpuinfo | less  
Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz

12 cores

flags: *** sse4_1 sse4_2 ***


2. 编译准备

         安装protobuf:

      

          安装cmake:

     

          安装maven:

3. 编译

解压hadoop 2.2.0的源代码

[plain]  view plain copy print ?
  1. tar xzvf hadoop-2.2.0-src.tar.gz  
进入源代码目录

[plain]  view plain copy print ?
  1. cd hadoop-2.2.0-src  
执行编译命令        
[plain]  view plain copy print ?
  1. mvn package -Pdist,native,docs -DskipTests -Dtar  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值