您好,欢迎访问一九零五行业门户网

hadoop2.4.0源码编译

1.前言 hadoop-2.4.0 的源码目录下有个 building.txt 文件,它介绍了如何在 linux 和 windows 下编译源代码,本文基本是遵照 building.txt 指示来操作的,这里再做一下简单的提炼。 第一次编译要求能够访问互联网, hadoop 的编译依赖非常多的东西,一定要保
1. 前言hadoop-2.4.0的源码目录下有个building.txt文件,它介绍了如何在linux和windows下编译源代码,本文基本是遵照building.txt指示来操作的,这里再做一下简单的提炼。
第一次编译要求能够访问互联网,hadoop的编译依赖非常多的东西,一定要保证机器可访问互联网,否则难逐一解决所有的编译问题,但第一次之后的编译则不用再下载了。
2. 安装依赖在编译hadoop 2.4.0源码之前,需要将下列几个依赖的东西安装好:
1) jdk 1.6或更新版本(本文使用jdk1.7,请不要安装jdk1.8版本,jdk1.8和hadoop 2.4.0不匹配,编译hadoop 2.4.0源码时会报很多错误)
2) maven 3.0或更新版本
3) protocolbuffer 2.5.0
4) cmake 2.6或更新版本
5) findbugs 1.3.9,可选的(本文编译时未安装)
在安装好之后,还需要设置一下环境变量,可以修改/etc/profile,也可以是修改~/.profile,增加如下内容:
export java_home=/root/jdk
export classpath=$java_home/lib/tools.jar
export path=$java_home/bin:$path
export cmake_home=/root/cmake
export path=$cmake_home/bin:$path
export protoc_home=/root/protobuf
export path=$protoc_home/bin:$path
export maven_home=/root/maven
export path=$maven_home/bin:$path
本文以root用户在/root目录下进行安装,但实际可以选择非root用户及非/root目录进行安装。
2.1. 安装protocolbuffer标准的automake编译安装方式:
1) cd /root
2) tar xzf protobuf-2.5.0.tar.gz
3) cd protobuf-2.5.0
4) ./conigure --prefix=/root/protobuf
5) make
6) make install
2.2. 安装cmake1) cd /root
2) tar xzf cmake-2.8.12.2.tar.gz
3) cd cmake-2.8.12.2
4) ./bootstrap --prefix=/root/cmake
5) make
6) make install
2.3. 安装jdk1) cd /root
2) tar xzf jdk-7u55-linux-x64.gz
3) cd jdk1.7.0_55
4) ln -s jdk1.7.0_55 jdk
2.4. 安装maven1) cd /root
2) tar xzf apache-maven-3.0.5-bin.tar.gz
3) ln -s apache-maven-3.0.5 maven
3. 编译hadoop源代码完成上述准备工作后,即可通过执行命令:mvn package -pdist -dskiptests -dtar,启动对hadoop源代码的编译。请注意一定不要使用jdk1.8。
如果需要编译成本地库(native libraries)文件,则使用命令:mvn package -pdist,native -dskiptests -dtar。如果c/c++程序需要访问hdfs等,需要使用navite方式编译生成相应的库文件。也可以使用mvn package -pnative -dskiptests -dtar特意编译出本地库文件。
相关的编译命令还有:
1) mvn package -pdist -dskiptests -dtar
2) mvn package -pdist,native,docs,src -dskiptests -dtar
3) mvn package -psrc -dskiptests
4) mvn package -pdist,native,docs -dskiptests -dtar
5) mvn clean site; mvn site:stage -dstagingdirectory=/tmp/hadoop-site
编译成功后,jar文件会放在target子目录下,可以在hadoop源码目录下借用find命令搜索各个target子目录。
编译成功后,会生成hadoop二进制安装包hadoop-2.4.0.tar.gz,放在源代码的hadoop-dist/target子目录下:
main:
     [exec] $ tar cf hadoop-2.4.0.tar hadoop-2.4.0
     [exec] $ gzip -f hadoop-2.4.0.tar
     [exec] 
     [exec] hadoop dist tar available at: /root/hadoop-2.4.0-src/hadoop-dist/target/hadoop-2.4.0.tar.gz
     [exec] 
[info] executed tasks
[info] 
[info] --- maven-javadoc-plugin:2.8.1:jar (module-javadocs) @ hadoop-dist ---
[info] building jar: /root/hadoop-2.4.0-src/hadoop-dist/target/hadoop-dist-2.4.0-javadoc.jar
[info] ------------------------------------------------------------------------
[info] reactor summary:
[info] 
[info] apache hadoop main ................................ success [4.647s]
[info] apache hadoop project pom ......................... success [5.352s]
[info] apache hadoop annotations ......................... success [7.239s]
[info] apache hadoop assemblies .......................... success [0.424s]
[info] apache hadoop project dist pom .................... success [2.918s]
[info] apache hadoop maven plugins ....................... success [6.261s]
[info] apache hadoop minikdc ............................. success [5.321s]
[info] apache hadoop auth ................................ success [5.953s]
[info] apache hadoop auth examples ....................... success [3.783s]
[info] apache hadoop common .............................. success [1:54.010s]
[info] apache hadoop nfs ................................. success [9.721s]
[info] apache hadoop common project ...................... success [0.048s]
[info] apache hadoop hdfs ................................ success [4:15.270s]
[info] apache hadoop httpfs .............................. success [6:18.553s]
[info] apache hadoop hdfs bookkeeper journal ............. success [16.237s]
[info] apache hadoop hdfs-nfs ............................ success [6.543s]
[info] apache hadoop hdfs project ........................ success [0.036s]
[info] hadoop-yarn ....................................... success [0.051s]
[info] hadoop-yarn-api ................................... success [1:35.227s]
[info] hadoop-yarn-common ................................ success [43.216s]
[info] hadoop-yarn-server ................................ success [0.055s]
[info] hadoop-yarn-server-common ......................... success [16.476s]
[info] hadoop-yarn-server-nodemanager .................... success [19.942s]
[info] hadoop-yarn-server-web-proxy ...................... success [4.926s]
[info] hadoop-yarn-server-applicationhistoryservice ...... success [9.804s]
[info] hadoop-yarn-server-resourcemanager ................ success [23.320s]
[info] hadoop-yarn-server-tests .......................... success [1.208s]
[info] hadoop-yarn-client ................................ success [9.177s]
[info] hadoop-yarn-applications .......................... success [0.113s]
[info] hadoop-yarn-applications-distributedshell ......... success [4.106s]
[info] hadoop-yarn-applications-unmanaged-am-launcher .... success [3.265s]
[info] hadoop-yarn-site .................................. success [0.056s]
[info] hadoop-yarn-project ............................... success [5.552s]
[info] hadoop-mapreduce-client ........................... success [0.096s]
[info] hadoop-mapreduce-client-core ...................... success [37.231s]
[info] hadoop-mapreduce-client-common .................... success [27.135s]
[info] hadoop-mapreduce-client-shuffle ................... success [4.886s]
[info] hadoop-mapreduce-client-app ....................... success [17.876s]
[info] hadoop-mapreduce-client-hs ........................ success [14.140s]
[info] hadoop-mapreduce-client-jobclient ................. success [11.305s]
[info] hadoop-mapreduce-client-hs-plugins ................ success [3.083s]
[info] apache hadoop mapreduce examples .................. success [9.855s]
[info] hadoop-mapreduce .................................. success [5.110s]
[info] apache hadoop mapreduce streaming ................. success [7.778s]
[info] apache hadoop distributed copy .................... success [12.973s]
[info] apache hadoop archives ............................ success [3.265s]
[info] apache hadoop rumen ............................... success [11.060s]
[info] apache hadoop gridmix ............................. success [7.412s]
[info] apache hadoop data join ........................... success [4.221s]
[info] apache hadoop extras .............................. success [4.771s]
[info] apache hadoop pipes ............................... success [0.032s]
[info] apache hadoop openstack support ................... success [8.030s]
[info] apache hadoop client .............................. success [7.730s]
[info] apache hadoop mini-cluster ........................ success [0.158s]
[info] apache hadoop scheduler load simulator ............ success [7.485s]
[info] apache hadoop tools dist .......................... success [6.912s]
[info] apache hadoop tools ............................... success [0.029s]
[info] apache hadoop distribution ........................ success [40.425s]
[info] ------------------------------------------------------------------------
[info] build success
[info] ------------------------------------------------------------------------
[info] total time: 21:57.892s
[info] finished at: mon apr 21 14:33:22 cst 2014
[info] final memory: 88m/243m
[info] ------------------------------------------------------------------------
其它类似信息

推荐信息