天天看點

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使用者執行編譯的,如果用其他的使用者編譯可能會存在權限問題。

繼續閱讀