[置顶] Hadoop2.7.2源码在64位Centos Linux下编译

一.在Hadoop官网上下载源码包 

1. 在 Hadoop官网上下载hadoop-2.7.2的源码包,下载地址: http://mirrors.noc.im/apache/hadoop/common/hadoop-2.7.2/hadoop-2.7.2-src.tar.gz 
2. 把下载下来的源码包,上传到linux上,在这里我放在了/home/soft/下

二.准备linux上运行环境 

1. 上传jdk、ant、maven、protobuf等到到linux上,在这里我放在了/home/soft/下 
2. 安装jdk 
使用命令:rpm -ivh jdk-7u67-linux-x64.rpm 
安装完后配置环境变量,修改/etc/profile文件,命令:vi /etc/profile 
在最后添加内容: 
export JAVA_HOME=/usr/ Java /jdk1.7.0_67/ 
export PATH=$PATH:$JAVA_HOME/bin
使用命令生效:source /etc/profile 
测试:java -version 
3.安装maven 
解压maven到/opt/目录下,并配置环境变量 
解压命令:tar -zxvf apache-maven-3.3.9-bin.tar.gz -C /opt/ 
修改/etc/profile文件,在文件末尾新增下面两行内容: 
export MAVEN_HOME=/opt/apache-maven-3.3.9 
export PATH= $PATH:$ MAVEN_HOME/bin 
使用命令生效:source /etc/profile 
4.安装g++ 
安装命令:yum -y install gcc gcc-c++ 
5.安装protobuf 
解压protobuf到当前目录 
解压命令:tar -zxvf protobuf-2.5.0.tar.gz 
cd protobuf-2.5.0/ 
编译安装 
预编译命令:./configure –prefix=/opt/protobuf-2.5 
编译和安装命令:make && make install 
配置环境变量,修改/etc/profile文件,末尾添加下面两行内容: 
export PROTOBUF_HOME=/opt/protobuf-2.5 
export PATH=$PATH:$ PROTOBUF_HOME/bin 
使用命令生效:source /etc/profile 
6.安装openssl 
安装命令:yum -y install openssl-devel 
7.安装cmake 
安装命令:yum -y install cmake 
8.安装ant 
解压maven到/opt/目录下,并配置环境变量 
解压命令:tar -zxvf apache-ant-1.9.7-bin.tar.gz -C /opt/ 
修改/etc/profile文件,在文件末尾新增下面两行内容: 
export ANT_HOME=/opt/apache-ant-1.9.7/ 
export PATH=$PATH:$ ANT_HOME/bin 
使用命令生效:source /etc/profile

三.编译 

1.解压hadoop-2.7.2 tar包 
解压命令:tar -zxvf hadoop-2.7.2-src.tar.gz 
2.编译 
cd hadoop-2.7.2-src 
编译命令:mvn package -Pdist,native -DskipTests -Dtar 
3.编译成功并查看 
编译完成后,在hadoop-dist/target/目录下查看,会有hadoop-2.7.2.tar.gz这个文件 

四.问题总结 

编译过程中会报各种错,可以直接终止编译,在重新执行编译,多执行几次就可以了,一般都是因为网络原因jar包下载有问题或maven仓库连接超时等原因,我共执行了5次就成功了。在说明下,我在用root用户执行编译的,如果用其他的用户编译可能会存在权限问题。

你可能感兴趣的:(源码,hadoop,linux,centos,64位)