1. 程式人生 > >Hadoop原始碼編譯學習

Hadoop原始碼編譯學習

##楔子

Hadoop編譯需要軟體

[[email protected] soft]# ##Hadoop編譯需要軟體
總用量 58776
 root root  5635116 6月  29 20:51 apache-ant-1.9.9-bin.tar.gz
-rw-r--r--.   root root  5144659 6月  29 20:54 apache-maven-3.0.5-bin.tar.gz
-rw-r--r--.  root root 46994526 4月  18 10:07 hadoop-2.7.6-src.tar.gz
-rw-r--r--.   root root  2401901 6月  29 20:54 protobuf-2.5.0.tar.gz
[[email protected] ~]# rpm -qa |grep java##檢視是否有自帶的java
[[email protected] ~]# 
##如果有自帶的java 刪除 rpm -e 包名 --nodeps

安裝上述軟體並配置環境變數

export JAVA_HOME=/usr/local/jdk
export MAVEN_HOME=/opt/soft/apache-maven-3.0.5
export ANT_HOME=/opt/soft/ant199

export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:$ANT_HOME/bin:

export LD_LIBRARY_PATH=/opt/soft/protobuf-2.5.0
export PATH=$PATH:$LD_LIBRARY_PATH

除了protobuf-2.5.0.tar.gz 需要 make 安裝之外,其他的解壓就行

#安裝openssl庫  安裝 ncurses-devel
yum -y install ncurses-devel openssl-devel
# 驗證  protoc 
[[email protected] opt]#  protoc --version
libprotoc 2.5.0
[[email protected] opt]# 
# 安裝好所需環境後 進入Hadoop原始碼包位置 執行如下指令碼編譯 
[[email protected] hadoop-2.7.6-src]# pwd
/opt/hadoop-2.7.6-src
[
[email protected]
hadoop-2.7.6-src]# mvn package -Pdist,native -DskipTests -Dtar

編譯後 在目錄~hadoop-2.7.6-src/hadoop-dist/target可以看到編譯好的Hadoop

[[email protected] target]# pwd#
/opt/hadoop-2.7.6-src/hadoop-dist/target
[[email protected] target]# ls
antrun                    hadoop-2.7.6.tar.gz                 javadoc-bundle-options
classes                   hadoop-dist-2.7.6.jar               maven-archiver
dist-layout-stitching.sh  hadoop-dist-2.7.6-javadoc.jar       maven-shared-archive-resources
dist-tar-stitching.sh     hadoop-dist-2.7.6-sources.jar       test-classes
hadoop-2.7.6              hadoop-dist-2.7.6-test-sources.jar  test-dir
[[email protected] target]# Z