在Ubuntu下编译hadoop2.5.x

Ubuntu下编译hadoop2.5.x

参考博客:http://www.aboutyun.com/thread-8130-1-1.html

1 下载hadoop源码:

1 http://www.aboutyun.com/thread-8130-1-1.html

?

wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.5.2/hadoop-2.5.2-src.tar.gz

2)解压源码:

hadoop@master:~/Downloads$ tar zxvf hadoop-2.5.2-src.tar.gz

2 安装jdk (已安装)

3 下载安装maven

sudo apt-get install maven

(由于网速可能很慢,可以下载到ubutu上安装)

下载Mavenhttp://mirrors.cnnic.cn/apache/maven/maven-3/3.2.3/binaries/apache-maven-3.2.3-bin.tar.gz

放到、usr/setup/目录下(自定义)

解压 tar -xzvf apache-maven-3.2.3-bin.tar.gz

?

添加环境变量:

sudo vim /etc/profile

添加

export M2_HOME=/home/weibo/apache-maven-3.0.5

export M2=$M2_HOME/bin

export PATH=$M2:$PATH

保存?

source profile

?

测试maven安装:

mvn –version

4 安装protobuf

为防止错误,需要先安装一些插件

4.1 安装g++

sudo apt-get install g++

?

4.2 下载protobuf

(有可能由于谷歌不能访问)

sudo wget https://protobuf.googlecode.com/files/protobuf-2.5.0.tar.gz

?

(1)解压:

tar zxvf protobuf-2.5.0.tar.gz

?

效果如下:

?

然后进入protobuf-2.5.0文件夹,进行如下操作:

$ sudo ./configure

$ sudo make

$ sudo make check

$ sudo make install

$ sudo ldconfig

(2)修改环境变量:

sudo vim /etc/profile

?

export LD_LIBRARY_PATH=usr/setup/protobuf-2.5.0

?

LD_LIBRARY_PATH的这里,填写的是protobuf文件的位置)

?

source /etc/profile

?

3)验证:protoc –version

若出错 或可以操作如下步骤

安装Google?ProtocolBuffer

?$?sudo?apt-get?install?protobuf-compiler

???装完后确认版本是否满足安装指南BUILDING.txt里所指定的2.5.0版本的要求。

???卸载?$?sudo?apt-get?remove?protobuf-compiler

?

?

4.3 安装openssl库

sudo apt-get install libssl-dev

4.4 安装CMake

sudo yum install cmake 或者 sudo apt-get install cmake

?

4.5 安装ant

下载:apache-ant-1.9.4-bin.tar.gz

解压:tar zxvf apache-ant-1.9.4-bin.tar.gz

配置环境变量:

sudo vi /etc/profile

添加如下红字部分:(自己的路径)

export ANT_HOME=/usr/setup/apache-ant-1.9.4

export PATH=$PATH:$ANT_HOME/bin

生效:source /etc/profile

?

检验:ant –version

5 编译hadoop2.5.2

????进入src文件夹,执行命令:mvn package -Pdist,native -DskipTests -Dtar

????等待(约40min):如图

?

在目录~/hadoop-2.5.2-src/hadoop-dist/target下有文件:
hadoop-2.5.2.tar.gz

?

?

6 错误总结

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。