Hadoop 2.3.0编译

下载版本:

安装maven和java
安装版本为:Apache Maven 3.0.4, 2.×版本会出现编译错误
安装java,设置path环境变量

安装protobuf
注意hadoop对protobuf有版本要求,需要安装2.5.0, 如果是其他版本,会在编译过程出现错(显示protoc版本不对)。该问题出现在2.4.1版本上
protobuf下载:https://code.google.com/p/protobuf/downloads/list
安装过程:./configure && make && make install
安装以后,执行protoc --version应该会输出“ error while loading shared libraries: libprotoc.so.8: cannot open shared”,
因为protobuf默认安装路径是在/usr/local/lib目录,而该目录不在ubuntu的 LD_LIBRARY_PATH 默认值里(默认值为:/lib和/usr/lib),所以就找不到该lib;
解决版本:1. 创建文件 /etc/ld.so.conf.d/libprotobuf.conf 包含内容:/usr/local/lib; 2. 输入命令:sudo ldconfig
然后运行上述命令显示"libprotoc 2.5.0". 表示done

安装gcc和g++
和上述一样,hadoop对gcc版本是有要求的,在3.4.5中编译过,有各种问题,所以建议直接安装最新版本的;我这边安装的是(gcc version 4.6.3)ok
版本不规范的时候胡出现: no such instruction: `crc32***错误

安装cmake
cmake版本使用的cmake version 2.8.7;如果安装后直接运行会出现 missing : ZLIB_INCLUDE_DIR ZLIB_LIBRARY和missing: OPENSSL_LIBRARIES错误,原因是需要安装sudo apt-get install zlib1g-dev和sudo apt-get install libssl-dev .
在安装zlib1g以后还是会出现missing : ZLIB_INCLUDE_DIR ZLIB_LIBRARY,此时需要设置该环境变量,如下:
export LD_LIBRARY_PATH=/usr/local/zlib/lib:$LD_LIBRARY_PATH
export C_INCLUDE_PATH=/usr/local/zlib/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/usr/local/zlib/include:$CPLUS_INCLUDE_PATH

然后再执行下面命令编译就ok:
mvn package -Pdist,native -DskipTests -Dtar -e
-e是显示错误

编译后所有的文件都在:release-2.3.0/hadoop-dist/target/hadoop-2.3.0目录下
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值