linux 编译hadoop 源码

由于官方提供的hadoop下载包是32位的,因此64要本身手动编译shell

安装jdk(1.7+),maven(3.0 or later) 的教程就掠过了。hadoop编译要求很好,因此要遵循官方文档里说的版本
apache

安装findbugs

版本:1.3.9vim

下载地址:https://sourceforge.net/projects/findbugs/files/findbugs/1.3.9/findbugs-1.3.9.tar.gz/downloadapi

vim /etc/profile  
export FINDBUGS_HOME=/usr/local/findbugs-1.3.9 
export PATH=$PATH:$FINDBUGS_HOME/bin  
source /etc/profile

安装protobuf

 版本:2.5.0maven

下载地址:(官方已不提供下载) http://pan.baidu.com/s/1hrbQbRYoop

tar zxvf protobuf-2.5.0.tar.gz  
cd protobuf-2.5.0  
./configure
make && make install 
protoc --version

若是成功,则会输出版本号信息,例如:libprotoc 2.5.0
ui

若是有问题,则会输出错误内容。spa

遇到的问题:.net

protoc: error while loading shared libraries: libprotoc.so.8: cannot open sharedcode

错误缘由:
protobuf的默认安装路径是/usr/local/lib,而/usr/local/lib 不在Ubuntu体系默认的 LD_LIBRARY_PATH 里,因此就找不到该lib
解决方法:

  1. 建立文件 /etc/ld.so.conf.d/libprotobuf.conf 包含内容:

/usr/local/lib

2. 输入命令

sudo ldconfig

这时,再运行protoc --version 就能够正常看到版本号了。

安装CMake

版本:2.6 or newe

我是直接软件源安装的:apt-get install cmake

有教程说这部能够不安装,可是我编译的时候报错找不到依赖,或许你能够试试。

编译hadoop源码

版本:2.7.2

下载地址:http://apache.fayea.com/hadoop/common/hadoop-2.7.2/

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

若是须要安装api:

  mvn package -Pdist,native,docs -DskipTests -Dtar

编译花费了半个小时,若是你的网速很慢还要更长。

后面还遇到了一些问题,没有安装依赖:

sudo apt-get install libglib2.0-dev 
sudo apt-get install build-essential
sudo apt-get install libssl-dev
sudo apt-get install zlib1g-dev
相关文章
相关标签/搜索